我有以下矩阵,我认为是稀疏的。我试图转换到密集使用x.dense格式,但它从来没有工作。有关如何做到这一点的任何建议?,谢谢。如何将稀疏矩阵转换为使用python的密集形式
mx=[[(0, 2), (1, 1), (2, 1), (3, 1), (4, 1), (5, 3), (6, 4), (7, 2), (8, 5), (9, 1)],
[(10, 1), (11, 5), (12, 2), (13, 1), (21, 1), (22, 1), (23, 1), (24, 1), (25, 1), (26, 2)],
[(27, 2), (28, 1), (29, 1), (30, 1), (31, 2), (32, 1), (33, 1), (34, 1), (35, 1), (36, 1)]]
有人提出了下面的解决方案,但有没有更好的办法?
def assign_coo_to_dense(sparse, dense):
dense[sparse.row, sparse.col] = sparse.data
mx.todense()。 预期输出应该以这种形式出现:[[2,1,1,1,1,3,4],[1,5,2,1,1,1,1],[2,1,1,1 ,2,1,1,1]
您是否使用numpy的或SciPy的? – Floris
嗨弗洛里斯,我使用numpy,但似乎大多数人已经解决了类似的问题,使用scipy。 – Tiger1
@ Tiger1是'mx'包含索引或值的矩阵吗?在SciPy中,您需要稀疏矩阵的最大维数为2,这似乎不是您的情况... –