从python中的稀疏到密集的矩阵表示

时间:2016-11-22 10:33:08

标签: python matrix

我在python中有一个向量列表,其中有3个值表示稀疏矩阵。实际上,第一个值是2d数组的索引(30是第一个索引s的最大值,9是第二个索引的最大值),第三个元素是矩阵的值。如何从该列表中计算矩阵30x9的密集重新平均值?我的数据具有以下结构:

> [1, 1, 4], 
  [1, 4, 2], 
  [1, 6, 1], 
  [1, 8, 5], 
   ....
  [31, 9, 6], 
  ...

我想要一个矩阵,其行为1-31,列索引为1-9,矩阵的值为向量的第三个值。最后,我想在数据集found here中执行NMF。

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

vectors = [[1,1,2],[2,4,6],[31,2,8]]

tab=[[0 for col in range(9)] for row in range(31)]
for x in vectors:
    tab[x[0]-1][x[1]-1] = x[2]
print tab