《R语言数据挖掘:实用项目解析》——1.11 apply原理
2023-09-11 14:19:09 时间
本节书摘来自华章计算机《R语言数据挖掘:实用项目解析》一书中的第1章,第1.11节,作者[印度]普拉迪帕塔·米什拉(Pradeepta Mishra),译 黄芸,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.11 apply原理apply函数以一个数组、一个矩阵或一个数据框作为输入,返回一个数组格式的结果。计算或运算由用户的自定义函数或内置函数定义。margin参数用于指定函数要作用于哪条边以及要保留哪条边。如果使用的数组是一个矩阵,那么可以指定margin是1(将函数应用于行)或2(将函数应用于列)。函数可以是任意用户自定义函数或内置函数,比如mean、median、standard deviation、variance等。这里我们将用Artpiece数据集来执行这个任务:
lapply函数在处理数据框(应用任何函数)时很有用。在R语言中,数据框被当作一个列表,数据框中的变量就是列表中的元素。因此,我们可以利用lapply将一个函数应用到一个数据框中的所有变量上,示例如下:
sapply函数适用于一个列表中的元素,返回的结果是一个向量、矩阵或者列表。当参数是simplify=F时,sapply函数会像lapply函数那样返回一个列表;反之,当参数是simplify=T,即默认参数时,sapply会以简化的格式返回结果:
有时我们想将一个函数应用到一个向量的子集,这些子集通常由其他向量定义(通常是一个因子)。tapply函数输出的是一个矩阵/数组,矩阵/数组中的每个元素是向量的g分组上f的值,g分组作用于行/列名上:
apply函数族还包含其他一些函数,例如:
eapply:将一个函数应用于一个环境中的变量。 mapply:将一个函数应用于多个列表或多个向量参数。 sapply:递归地将一个函数应用于一个列表。相关文章
- 在ubuntu上安装运行ionic项目
- vue项目启动时将localhost替换成指定ip地址
- [JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目
- 使用 SonarQube 分析 Maven 项目
- go语言项目如何引用依赖Github上的开源项目
- Python语言学习:Python语言学习之程序打包发布(exe/msi等)&如何将自己的Python项目(自定义程序代码库)发布到PyPI全流程的简介、案例应用之详细攻略
- 【项目实战】使用Spring框架中的RestTemplate,实现HTTP请求的调用
- [手游项目3]-13-go语言的defer语句
- 【tornado】系列项目(一)之基于领域驱动模型架构设计的京东用户管理后台
- 软考高项之项目变更管理
- 有哪些值得学习的 Go 语言开源项目