Сколько данных может обработать NumPy - PullRequest
1 голос
/ 12 марта 2012

Я пытаюсь работать с PyTables и NumPy.

Подскажите, пожалуйста, сколько данных может обработать последняя?

В настоящее время я работаю с данными из 140 миллионов строк и хотел бы знать, может ли NumPy справиться с этим. Было бы неплохо, если бы он мог обрабатывать как минимум 140 миллионов строк из 2 столбцов. Сейчас я использую 64-битную версию Windows с 8 ГБ оперативной памяти.

Если NumPy не может обработать этот объем данных, каковы возможные альтернативы для алгоритмической реализации статистики и машинного обучения?

1 Ответ

3 голосов
/ 12 марта 2012

140M намного меньше, чем 2 ** 31, так что это должно даже поместиться в 32-битный Python / Numpy при условии достаточной памяти.Вы можете легко попробовать это с

>>> import numpy as np
>>> X = np.empty((140e6, 2))

Использование памяти со стандартом dtype=np.float64 составляет порядка 8 байтов × 140M × 2 = 2 ГБ.Если вы используете dtype=np.float32, вы можете сохранить коэффициент 2.

...