Python - MemoryError: невозможно выделить для массива с типом int64 - PullRequest
0 голосов
/ 09 июля 2020

Я пытаюсь создать матрицу numpy:

matrix = np.zeros((242993, 9000000, 13), dtype=int)

Но я получаю MemoryError:

MemoryError: Unable to allocate 207. TiB for an array with shape (242993, 9000000, 13) and data type int64

EDIT: я работаю Linux Mint 64

EDIT 2: Я пытаюсь создать матрицу, которую я буду использовать для сохранения чисел int / float

РЕДАКТИРОВАТЬ 3: Вопрос в том, как я могу создать матрицу с таким размером?

Кто-нибудь может мне помочь? Спасибо

1 Ответ

0 голосов
/ 09 июля 2020

matrix = np.zeros((242993, 9000000, 13), dtype=int) требует 242993x9000000x13x32 (бит / целое число) бит, что по существу составляет 9,1e14 бит или порядка сотен терабайт. Даже если вы используете биты dtype, это все равно не поместится в вашей памяти. В зависимости от вашего приложения вы можете хранить его по-разному или разбивать на меньшие массивы.

...