如何将R apply函数的结果保存到矩阵中?

时间:2014-08-18 22:29:23

标签: r dataframe

假设我有一个数据集X,其维度为100 x 10。 我想对每列应用一组函数,并将结果保存在具有相同列标题的新数据框中。

实施例

M <- matrix(rexp(200, rate=.1), ncol=20)
M_df <- as.data.frame(M)
row1 <- apply(M_df,2,mean)
row2 <- apply(M_df,2,var)
row3 <- apply(M_df,2,sum)

我想创建一个由row1,row2和row3组成的新矩阵 它与M_df具有相同的列标题。

谢谢! 最大

1 个答案:

答案 0 :(得分:3)

试试这个:

apply(M_df,2,function(x) c(mean = mean(x),var = var(x),sum = sum(x)))

尽管如此,请记住apply做的第一件事就是将M_df转换回矩阵,因此在真正需要之前将其转换为数据框并没有多大意义。< / p>