Панды преобразуют CSV в файл H5, избегая ошибки памяти

У меня есть этот простой код

data = pd.read_csv(file_path + 'PSI_TS_clean.csv', nrows=None, 
                   names=None, usecols=None)

data.to_hdf(file_path + 'PSI_TS_clean.h5', 'table')

но мои данные слишком велики, и у меня возникают проблемы с памятью.

Что такое чистый способ сделать этот кусок за кусок?

1 ответ

Если csv действительно большой, разделите файл, используя метод, такой как подробно описанный здесь: /questions/44051179/kuski-dannyih-iz-bolshogo-fajla-dlya-mnogoprotsessornoj-obrabotki

затем переберите файлы и используйте pd.read_csv для каждого, затем используйте метод pd.to_hdf

для to_hdf проверьте параметры здесь: DataFrame.to_hdf, вам нужно обеспечить режим 'a' и рассмотреть возможность добавления.

Не зная дополнительных подробностей о структуре данных, трудно комментировать дальше.

также для read_csv есть параметр: low_memory=False

Другие вопросы по тегам