美文网首页
2019-07-23

2019-07-23

作者: 苹果皮好多皮 | 来源:发表于2019-07-24 16:45 被阅读0次

R语言中的apply函数族

https://zhuanlan.zhihu.com/p/30861631

1、lapply函数

lapply函数是一个最基础循环操作函数之一,用来对list、data.frame、vector(达不到理想效果,因为他会返回list)数据集进行循环,并返回和X长度同样的list结构作为结果集,通过lapply的开头的第一个字母 ' l ' 就可以判断返回结果集的类型。

定义:lapply(X, FUN, ...)     参数列表:X:list、data.frame数据;FUN: 自定义的调用函数;…: 更多参数,可选

例:lapply(temp,min)   temp是list,七列,每列5个元素。

temp lapply输出

sapply(temp,min)

sapply输出

2、sapply函数

sapply函数是一个简化版的lapply,sapply增加了2个参数simplify和USE.NAMES,返回值为向量。list or vector 

定义:sapply(X, FUN, ..., simplify=TRUE, USE.NAMES = TRUE)

参数列表:X:数组、矩阵、数据框;FUN: 自定义的调用函数;…: 更多参数,可选;simplify: 是否数组化;当值为"array"时,输出结果按数组进行分组;USE.NAMES: 如果X为字符串,TRUE设置字符串为数据名,FALSE不设置

3、vapply函数

vapply类似于sapply,提供了FUN.VALUE参数,用来控制返回值的行名,这样可以让程序更健壮。

定义:vapply(X, FUN, FUN.VALUE, ..., USE.NAMES = TRUE)

参数列表:X:数组、矩阵、数据框;FUN: 自定义的调用函数;

FUN.VALUE: 定义返回值的行名row.names,需要一个模板作为函数FUN的返回参数;

…: 更多参数,可选;USE.NAMES: 如果X为字符串,TRUE设置字符串为数据名,FALSE不设置

例如FUN.VALUE用法:

三行,且每行都是数字,所以numeric(3) 四行,且每行都是数字,所以numeric(4),"FUN.VALUE="可写可不写   一行,且每行都是逻辑值,所以logical(1)

相关文章

网友评论

      本文标题:2019-07-23

      本文链接:https://www.haomeiwen.com/subject/bcdzlctx.html