使用应用族,聚合等的多个函数

时间:2015-03-03 10:00:58

标签: r

我查了一下,发现了几个与此问题相关的问题multiple functions in a single tapply or aggregate statement R Grouping functions: sapply vs. lapply vs. apply. vs. tapply vs. by vs. aggregate

实际上我想知道在上述算法之一中使用多个函数的最佳方法是什么。

我试着举个例子

# make a simple matrix 
df <- matrix(data=rnorm(10), 10, 5)

# make a function which calculate several properties 
several <- function(x) {
      c(min = min(x), mean = mean(x), max = max(x), median =median(x), sum=sum(x))
   }

# use one of the apply family 
apply(df,2, several)
你会怎么做?有没有其他方法可以使它更容易或更实用?

1 个答案:

答案 0 :(得分:1)

each中的

plyr也为您提供了诀窍:

library(plyr)
df <- matrix(data=rnorm(50), 10, 5)
aaply(df, 2, each(min, mean, max, median, sum)) 

如果您想要其他输入/输出格式,可以使用dplyr中的不同功能。