r语言中的apply函数族 学习笔记

apply函数家族:

/
上图来自http://blog.fens.me/r-apply

apply

apply(array, margin, FUN, ...)

作用于矩阵或数组中每一行或每一列的一个margin(margin是作为一个函数的输入,有一个对应的输出,例如均值,方差,也可以是自己写的函数),然后返回值存在一个向量或者数组中。

举一个例子:

> m <- matrix(c(1:10), nrow=2)
> m
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    3    5    7    9
[2,]    2    4    6    8   10
> apply(m, 1, sum)
[1] 25 30

apply函数中
第一个参数表示数据
第二个参数margin是1或2。1对应每一列,2对应每一行
第三个参数fun是作用的函数

lapply和sapply

这两个函数和apply很像,不过apply/sapply一般需要两个参数,第一个参数是输入数据,第二个是函数。

lapply(X, FUN, ...)`

参数:
x 代表数据,可以是data.frame或者list
fun 调用函数

sapply函数是一个简化版的lapply,sapply增加了2个参数simplify和,主要就是让输出看起来更友好,返回值为向量,而不是list对象。

sapply(X, FUN, ..., simplify=TRUE)

simplify: 是否数组化,当值array时,输出结果按数组进行分组

学习:
http://blog.fens.me/r-apply/

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值