【发布时间】:2019-03-02 21:35:55
【问题描述】:
df <- data.frame(group = rep(1:4, each = 10),
x1 = rnorm(40), x2 = rnorm(40), x3 = rnorm(40), x4 = rnorm(40),
X5 = rnorm(40), x6 = rnorm(40), x7 = rnorm(40))
sapply(df[, 4:ncol(df)], function(x) sd(x)/mean(x))
我想为每个组应用此功能。如何更正以下命令?
df %>% dplyr::group_by(group) %>% do.call(sapply(.[, 4:ncol(.)] function(x) sd(x)/mean(x)))
【问题讨论】:
-
您预期的输出数据是多少?每组一行和 4:ncol() 矩阵范围的 sd(x)/mean(x) 的值?换句话说,一个 4x2 的组数据框和 sd/mean 结果?
-
没有。我需要一个 4 X 5 的数据框。每一行是一个组,每一列是x3、x4、x5、x6和x7列的CV。