我有 25 个像这样的列表形式的数据框(这里显示了三个,三个足以进行示例计算):
df1 <- data.frame(c(1, 3, 2, 4, 2, 2,4), c(4, 5, 2, 5, 6, 3, 2))
df2 <- data.frame(c(4, 2, 5, 2, 5, 2, 6), c(6, 3, 2, 6, 2, 6, 3))
df3 <- data.frame(c(1, 3, 2, 4, 2, 2,4), c(4, 5, 2, 5, 6, 3, 2))
list <- list(df1, df2, df3)
我想制作另一个数据框,其中包含每个单元格中的平均值,然后是标准差。因此它将是一个 4 列 x 7 行的数据框,其中包含数据框中每个单元格的均值和标准差。
如何才能做到这一点?我的数据也有超过 7 行。
mylist <- list(df1, df2, df3)
do.call(cbind, lapply(lapply(1:2, function(i) sapply(mylist, function(x) x[,i])),
function(a) t(apply(a, 1, function(x) c(mean(x), sd(x))))))
# [,1] [,2] [,3] [,4]
#[1,] 2.000000 1.7320508 4.666667 1.1547005
#[2,] 2.666667 0.5773503 4.333333 1.1547005
#[3,] 3.000000 1.7320508 2.000000 0.0000000
#[4,] 3.333333 1.1547005 5.333333 0.5773503
#[5,] 3.000000 1.7320508 4.666667 2.3094011
#[6,] 2.000000 0.0000000 4.000000 1.7320508
#[7,] 4.666667 1.1547005 2.333333 0.5773503
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句