У меня проблемы с памятью при использовании Pandas на некоторых больших CSV-файлах (более 30 миллионов строк). Итак, мне интересно, какое лучшее решение для этого? Мне нужно объединить пару больших таблиц. Большое спасибо!ошибки памяти python pandas при работе с большими CSV-файлами
ответ
Возможный дубликат: Fastest way to parse large CSV files in Pandas.
Умозаключение есть, если вы загрузки данные CSV файлов часто, то лучше было бы разобрать его один раз (с обычным read_csv
) и сохранить его в формате HDF5. Pandas
(с библиотекой PyTables
) обеспечивает эффективный способ решения этой проблемы [docs].
Кроме того, ответ на What is the fastest way to upload a big csv file in notebook to work with python pandas? показывает в заданное время исполнения (timeit) из образца набора данных с csv
противcsv.gz
противPickle
противHDF5
сравнения.
Проблема заключается не в загрузке файла. Проблема заключается в слиянии нескольких больших таблиц. –
В этом случае ваш вопрос немного вводит в заблуждение. Хотя формат HDF5 по-прежнему лучше подходит для вашего требования. Ref [this] (http://stackoverflow.com/questions/14262433/large-data-work-flows-using-pandas) для большей ясности. –
Каков размер файла csv и каков размер вашей оперативной памяти ?. Вы пробовали свойства, такие как 'low_memory = False' и' chunksize' при чтении данных? –