我想知道如何在Python中有效地添加稀疏矩阵。
我有一个程序可以将大任务分解为子任务并将它们分配到多个CPU中。每个子任务都会产生一个结果(格式为:lil_matrix
的scipy稀疏矩阵。)
稀疏矩阵维数是:100000x500000,这是非常巨大的,所以我真的需要最有效的方法将所有生成的稀疏矩阵加到一个稀疏矩阵中,使用一些C编译方法或其他东西。
答案 0 :(得分:9)
你尝试过最简单的方法吗?
matrix_result = matrix_a + matrix_b
文档警告说,LIL矩阵可能会很慢,这表明以下内容可能会更快:
matrix_result = (matrix_a.tocsr() + matrix_b.tocsr()).tolil()