R:如何在矩阵列表上进行colMeans

时间:2016-04-23 21:21:21

标签: r

我想知道如何在矩阵列表上进行colMeans。

请在R。中显示如何执行此操作。

非常感谢。

这是我的数据集,如下所示:

> dataset
     [,1]     [,2]    
[1,] 22.04031 28.03182
[2,] 23.94481 28.17275
[3,] 16.39071 25.44523
[4,] 22.10198 22.45534
[5,] 24.95194 27.95778
[6,] 33.09007 36.74856

我在colMeans之后的期望结果将在col [,1]和[,2]上进行平均值。这两列的平均值分别为23.75330和28.13524。

以下是有关此数据集的其他信息:

> str(dataset)
List of 12
 $ : num 22
 $ : num 23.9
 $ : num 16.4
 $ : num 22.1
 $ : num 25
 $ : num 33.1
 $ : num 28
 $ : num 28.2
 $ : num 25.4
 $ : num 22.5
 $ : num 28
 $ : num 36.7
 - attr(*, "dim")= int [1:2] 6 2

融化数据集。列值是我想要的colMeans。

> melt(dataset)
   Var1 Var2    value       NA
1     1    1 22.04031 28.03182
2     2    1 23.94481 28.17275
3     3    1 16.39071 25.44523
4     4    1 22.10198 22.45534
5     5    1 24.95194 27.95778
6     6    1 33.09007 36.74856
7     1    2 22.04031 28.03182
8     2    2 23.94481 28.17275
9     3    2 16.39071 25.44523
10    4    2 22.10198 22.45534
11    5    2 24.95194 27.95778
12    6    2 33.09007 36.74856

1 个答案:

答案 0 :(得分:3)

由于您的列表具有dim属性,因此您只需使用:

mat <- array(unlist(dataset), dim = dim(dataset))
colMeans(mat)

编辑:谢谢@RichardScriven的改进。