Determining the byte size of a scipy.sparse matrix?

雨燕双飞 提交于 2019-12-18 12:47:38

问题


Is it possible to determine the byte size of a scipy.sparse matrix? In NumPy you can determine the size of an array by doing the following:

import numpy as np

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

回答1:


A sparse matrix is constructed from regular numpy arrays, so you can get the byte count for any of these just as you would a regular array.

If you just want the number of bytes of the array elements:

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

If you want the byte counts of all arrays required to build the sparse matrix, then I think you want:

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


来源:https://stackoverflow.com/questions/11173019/determining-the-byte-size-of-a-scipy-sparse-matrix

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!