阅读 101

apply函数族

#apply(X,MARGIN,FUN,...)
#按行求和
apply(df,1,sum)
#按列求和
apply(df,2,sum)
#df里所有元素重新赋值
apply(df,c(1,2),function(x){x<-100})
#计算df里每一列的均值,方差,最大值(apply方法,for方法见下图)
apply(df,2,function(x){c(mean(x),var(x),max(x))})
#编写自定义函数应用apply求df里每一列的均值,方差,最大值
fun_1<_function(x){
           c(mean(x),var(x),max(x))
}
apply(df,2,fun_1)
#按列求立方和
apply(df,2,function(x){sum(x^3)})
#针对列表的数据求其每个子集的均值(lapply方法,for方法见下图)
lapply(list,mean)       
sapply(list,mean)   #lapply函数的简化版,输出结果为向量
lapply(list,mean,na.rm=T)   #若数据出现缺失值,去掉缺失值后计算。
#mapply的应用,一次可以输入多个参数或一个参数需传入一个向量对每个值都做运算。
mapply(function(x,y){x^y},c(2,2),c(2,1))
#综合应用,自定义嵌合函数
sapply(list(mean,var,max),
       function(x){apply(data,2,x)},
        simplify=T)

①apply函数的基本使用方法

apply函数无法应用于列表。


apply函数结果图.png

②计算df里每一列的均值,方差,最大值(for函数方法)

for方法.png

③计算df里每一列的均值,方差,最大值(apply方法)

apply方法.png

④数据中出现缺失值NA的处理办法(apply函数应用)

apply处理缺失值的数据及解释FUN后...的意义.png

⑤编写自定义函数应用apply求df里每一列的均值,方差,最大值

编写自定义函数应用apply.png

⑥针对列表的数据求其每个子集的均值(for方法)

①for方法.png

②for方法.png

⑦针对列表的数据求其每个子集的均值(lapply方法)

lapply应用于列表、数据框,输出形式为列表。
lapply(frame,mean)得到输出形式为列表的frame数据里每列的均值


①lapply方法.png

②lapply方法.png

sapply是lapply的简化版,输出结果以向量形式呈现。

⑧mapply的应用

MoreArgs(list(1,2))的含义是常数a=1,b=2


mapply.png

⑨综合应用,自定义嵌合函数

sapply(list(mean,var,max),function(x){apply(data,2,x)},simplify=T)


自定义嵌合函数.png

作者:安笙依萍

原文链接:https://www.jianshu.com/p/eccef8351d89

文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐