R语言apply家族函数(apply/tapply/sapply/lapply)使用--别写循环了!

本文介绍了R语言中apply家族的三大成员——apply、lapply和sapply的使用,强调它们如何通过向量化操作减少循环代码,提高效率。apply主要针对矩阵的行或列进行操作,lapply与sapply适用于列表,sapply还能简化输出为向量。tapply则是在数据框中按因子变量分组进行统计计算。掌握这些函数,能有效提升R语言编程的效率。
摘要由CSDN通过智能技术生成

apply家族函数的使用

对数据集进行操作的时候,我们经常需要写循环操作,比如对于矩阵的每一列计算它的平均值等等,而R语言的向量化操作可以节省非常多循环的代码。所以说在R语言里面,当你要写循环的时候,一定要对自己先说三遍,不写循环!不写循环!不写循环!因为apply()函数就是代替循环写法的一系列非常好用的函数,各式各样批量化的操作都不在话下。之前写过的dplyr包完整指南也是批量操作的一个神器。不过对于普通数据集apply系列的家庭成员们已经完全可以搞定了~下面举例说一下函数的具体用法

1.apply

apply主要是对矩阵的行或列进行批量操作操作

apply(X, MARGIN, FUN, ...)
  • x:向量或者矩阵
  • margin:维度,对于矩阵,1表示行,2表示列,c(1,2)表示行和列。 如果有行名和列名,也可以使用
  • fun:要应用的函数,比如求和,求均值等等,或者你还可以自定义一些奇奇怪怪的计算函数,计算n阶矩之类的
x <- matrix(c(1,2,3,4,5,6,7,8,9),nrow = 3)
x
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    
  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值