Определение размера байта матрицы scipy.sparse? - программирование
Подтвердить что ты не робот

Определение размера байта матрицы scipy.sparse?

Можно ли определить размер байта матрицы scipy.sparse? В NumPy вы можете определить размер массива, выполнив следующее:

import numpy as np

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

Ответ 1

Редкая матрица построена из регулярных массивов 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