确定scipy.sparse矩阵的字节大小?

时间:2012-06-23 21:10:06

标签: python scipy sparse-matrix

是否可以确定scipy.sparse矩阵的字节大小?在NumPy中,您可以通过执行以下操作来确定数组的大小:

import numpy as np

print(np.zeros((100, 100, 100).nbytes)
8000000

1 个答案:

答案 0 :(得分:35)

稀疏矩阵是由常规numpy数组构造的,因此您可以获得其中任何一个的字节数,就像使用常规数组一样。

如果您只想要数组元素的字节数:

>>> from scipy.sparse import csr_matrix
>>> a = csr_matrix(np.arange(12).reshape((4,3)))
>>> a.data.nbytes
88

如果你想要构建稀疏矩阵所需的所有数组的字节数,那么我认为你想要:

>>> print a.data.nbytes + a.indptr.nbytes + a.indices.nbytes
152