循环在处理数据的时候非常重要,但不得不说写function的时候还是得绕不少弯路,好在现在R语言有非常多函数可以直接使用,带来不少便利。在学习写looping function 的时候,可以先熟练掌握了以下向量化操作apply、tapply、lapply、sapply、mapply的函数,然后再自己尝试写自己的:
lapply | lapply(X,FUN,...) ,注意:若X不是列表,但会被强制as.list |
sapply | sapply(X, FUN,..., simplify = TRUE, USE.NAMES = TRUE) ;与Lapply相似,或者说是lapply的衍生 |
apply | apply(X, MARGIN, FUN, ...),把FUN用到array的特定margins |
tapply | tapply(X, INDEX, FUN = NULL, ..., simplify = TRUE),专门用来处理分组数据的 |
mapply | mapply(FUN, ..., MoreArgs = NULL, SIMPLIFY = TRUE,USE.NAMES = TRUE) ,mapply是sapply的变形 |
#下面使用R自带的数据来实践:
> library(datasets)
> data(iris)
#在使用这个iris之前,建议大家可以先看看这个数据的具体情况
>