【发布时间】:2016-11-17 08:53:28
【问题描述】:
我有三个列表:
"corMat" "corMatPVAL" "index"
> head(corMat)
[,1]
[1,] 0.7786662
[2,] 0.7536617
[3,] 0.7950954
[4,] 0.7950954
[5,] 0.7950954
[6,] 0.7388970
> head(corMatPVAL)
[,1]
[1,] 6.166382e-155
[2,] 1.304651e-139
[3,] 3.756711e-166
[4,] 3.756711e-166
[5,] 3.756711e-166
[6,] 2.097761e-131
> head(index)
[,1]
[1,] 82
[2,] 271
[3,] 441
[4,] 442
[5,] 443
[6,] 501
我必须制作两个大小为 48389 行和 48389 列的矩阵,即一个用于填充第三个列表(索引)中提供的索引的 corMat 值(第一个列表)和一个填充相同索引的 corMatPVAL(第二个列表)矩阵如第三个列表(索引)中所述。
注意:索引仅是矩阵的下三角形。请让我知道如何制作矩阵,然后以矩阵形式映射这些列表值。 第三个列表中提到的索引。矩阵的对角线和upper.tri部分可以是NA
【问题讨论】:
-
Matrix::sparseMatrix可能很有用 -
@KHANirfan 你能停止反战吗?我编辑了标题,以便它告诉用户更多关于您想要做什么:从索引和值的 LT(下三角)矩阵创建一个稀疏矩阵。
-
KHANirfan 你已经得到了来自@Miff 的使用
Matrix::sparseMatrix的建议,试试这个,如果它失败了,在这里发布你的代码并解释什么是错的。你必须安装Matrix包,是吗?它不是内置在 R 中的。根据vignette for Matrix,它在 3.3.1 下支持。如果您在安装时遇到问题,请发布一个单独的新问题。
标签: r list matrix sparse-matrix