您可以使用scipy库中的sparse模块来按轴汇总矩阵中的非零值。下面是一个示例代码:
import scipy.sparse as sp
# 创建一个稀疏矩阵
matrix = sp.csr_matrix([[0, 1, 0], [2, 0, 3], [0, 0, 4]])
# 按列汇总非零值
column_sums = matrix.sum(axis=0)
print("按列汇总非零值:", column_sums)
# 按行汇总非零值
row_sums = matrix.sum(axis=1)
print("按行汇总非零值:", row_sums)
运行以上代码,输出如下:
按列汇总非零值: [[2 1 7]]
按行汇总非零值: [[1]
[5]
[4]]
上述示例中,我们首先使用sp.csr_matrix
函数创建了一个稀疏矩阵。然后,使用sum
方法按指定的轴(0表示按列,1表示按行)汇总非零值。最后,打印出按轴汇总后的结果。
请注意,在使用scipy的sparse模块时,需要先导入scipy.sparse
。