Открытие 20ГБ файла для анализа с пандами
Я новичок в науке о данных и Dta Analytics. Надеюсь, мой вопрос не слишком наивен. В настоящее время я пытаюсь открыть файл с пандами и python для целей машинного обучения, для меня было бы идеально, чтобы они все были в DataFrame. Теперь размер файла составляет 18 ГБ, а объем оперативной памяти - 32 ГБ, но я продолжаю получать ошибки памяти.
- из вашего опыта это возможно?
- если нет, то знаете ли вы о том, как лучше обойти это? (таблица кустов - увеличьте размер моей оперативной памяти до 64 - создайте базу данных и получите доступ к ней из python) Каждый вход будет приветствоваться!
Заранее спасибо.
2 ответа
Можете ли вы работать с данными кусками? Если это так, вы можете использовать интерфейс итератора панд для просмотра файла.
df_iterator = pd.read_csv('test.csv', index_col=0, iterator=True, chunksize=5)
for df in df_iterator:
print(df)
# do something meaningful
print('finished iteration on {} rows'.format(df.shape[0]))
print()
Вы должны пытаться читать и обрабатывать один предопределенный кусок данных каждый раз, используя chunksize, как описано здесь
for chunk in pd.read_csv(f, sep = ' ', header = None, chunksize = 512):
# process your chunk here