压缩稀疏列(CSC)或压缩稀疏行(CSR)稀疏矩阵?

6
我有一个设计矩阵,正在使用scipy模块转换为稀疏矩阵
它有许多行,但只有很少的列
在这种情况下,是更好使用CSC还是CSR设计?或者它们在执行速度上严格等效?
基本上,它看起来像这个例子: (但在真实的情况下有更多的行)

enter image description here

谢谢!

1个回答

5
您可以轻松地将一种格式转换为另一种格式(.tocsc().tocsr())。实际上,对于csrM.T只是创建了一个具有相同数据的csc

在许多情况下,sparse函数将矩阵转换为另一种格式以执行某些操作。在其他情况下,如果格式不是最佳的,则会给出“效率”警告(注意,警告每次运行仅出现一次)。

如果您正在遍历列或大多数选择按列进行,则csc更好,反之亦然csr。对于数学、矩阵乘积等,它们是等效的。

以一种方式创建矩阵,并对典型操作进行一些计时测试。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接