nbytes и getsizeof возвращают различные значения после изменения формы - PullRequest
0 голосов
/ 16 октября 2019

Этот вопрос относится к одному из приведенных здесь: nbytes и getsizeof возвращает разные значения

Я протестировал одинаковое количество данных в массиве numpy и получил разные (по размеру) getsizeof значения, когда я меняю форму. Ниже вы найдете код, который я тестировал.

from sys import getsizeof
import numpy as np

test_array = np.asarray(np.arange(1000000.0)).reshape(1000, 1000)
print("Real size of test array is {:,.0f}".format(getsizeof(test_array)))
print("NP size of test array is {:,.0f}".format(test_array.nbytes))

Результат:

Real size of test array is 112
NP size of test array is 8,000,000

Без изменения формы

from sys import getsizeof
import numpy as np

test_array = np.asarray(np.arange(1000000.0))
print("Real size of test array is {:,.0f}".format(getsizeof(test_array)))
print("NP size of test array is {:,.0f}".format(test_array.nbytes))

Я получаю:

Real size of test array is 8,000,096
NP size of test array is 8,000,000
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...