【问题标题】:How to obtain the mean-matrix from a list of matrices in R如何从 R 中的矩阵列表中获取均值矩阵
【发布时间】:2014-02-25 05:21:58
【问题描述】:

我在 R 中有一个 100 个 50*50 矩阵的列表,存储在一个名为 all_permutations 的变量中。

> str(all_permutations)
List of 100
 $ : num [1:50, 1:50] 0 0.00972 0.34989 0 0.0019 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:50] "G1" "G2" "G3" "G4" ...
  .. ..$ : chr [1:50] "G1" "G2" "G3" "G4" ...
 $ : num [1:50, 1:50] 0 0.00972 0.34989 0 0.0019 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:50] "G1" "G2" "G3" "G4" ...
  .. ..$ : chr [1:50] "G1" "G2" "G3" "G4" ...

有没有一种优雅的方法来获得所有这些矩阵的平均值,而无需构建双 for 循环来获得所有 100 个矩阵中每个索引的平均值?谢谢。

【问题讨论】:

  • 您能否更具体地了解“所有这些矩阵的平均值”是什么?例如,它是每个矩阵的位置 [1,1] 的平均值吗?
  • 我很抱歉,@Jeremy。我的意思是我可以获得 50*50 矩阵的每个索引的 100 个值的平均值。这有意义吗?

标签: r list matrix permutation


【解决方案1】:

如果你想得到每个位置的元素的平均值,你需要将all_permutations的元素相加,然后除以元素的数量。

如果你输入这个,你会做这样的事情:

(all_permutations[[1]] + all_permutations[[2]] + ... ) / length(all_permutations)

幸运的是,Reduce 函数可以为您节省大量输入(或者,更有可能是for 循环):

Reduce("+", all_permutations) / length(all_permutations)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-08
    • 1970-01-01
    • 1970-01-01
    • 2013-01-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多