Middle
26
Как не убить Jupyter или Pandas по памяти?
Сұралған компаниялар
FOM GROUP
AI-дан жауап
sobes.tech AI
Чтобы не убить Jupyter Notebook или Pandas по памяти, нужно контролировать объем данных и оптимизировать работу с ними:
- Работайте с выборками данных, а не с полными наборами, если это возможно. Используйте фильтры или загружайте данные частями.
- Используйте типы данных с меньшим потреблением памяти, например
categoryдля строковых колонок в Pandas. - Удаляйте ненужные объекты из памяти с помощью
delи вызывайтеgc.collect()для сборки мусора. - Используйте генераторы и итераторы вместо загрузки всего в память.
- Периодически перезапускайте ядро Jupyter, чтобы очистить накопленную память.
- Используйте специализированные библиотеки для работы с большими данными, например Dask или Vaex, которые обрабатывают данные лениво и по частям.
Пример оптимизации типов в Pandas:
import pandas as pd
df = pd.read_csv('large_file.csv')
df['category_column'] = df['category_column'].astype('category')
Так можно значительно снизить потребление памяти.
Также полезно мониторить использование памяти с помощью %memit из memory_profiler или встроенных инструментов Jupyter.