摘要: R语言中有几个常用的函数,可以按组对数据进行处理,apply, lapply, sapply, tapply, mapply,等。这几个函数功能有些类似,下面介绍下这几个函数的用法。 Apply 这是对一个Matrix或者Array进行某个维度的运算。
R语言中有几个常用的函数,可以按组对数据进行处理,apply, lapply, sapply, tapply, mapply,等。这几个函数功能有些类似,下面介绍下这几个函数的用法。
Apply
这是对一个Matrix或者Array进行某个维度的运算。其格式是:
Apply(数据,维度Index,运算函数,函数的参数)
对于Matrix来说,其维度值为2,第二个参数维度Index中,1表示按行运算,2表示按列运算。下面举一个例子:
m<-matrix(1:6,2,3)
构建一个简单的2行3列的矩阵,内容为:
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
如果我们要计算每一行的sum值,那么我们可以写为:
apply(m,1,sum)
[1] 9 12
如果要计算每一列的mean值,那么改为:
apply(m,2,mean)
[1] 1.5 3.5 5.5
假如某个值为NA,那么要忽略NA值,进行每一行的SUM怎么办呢?
m[2,2]<-NA
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 NA 6
apply(m,1,sum)
[1] 9 NA
<