Проблемы с памятью в Python при исключении наблюдений - PullRequest
0 голосов
/ 16 июня 2020

У меня есть df1 с 55 миллионами наблюдений (три столбца) и df2 с 4000 наблюдениями и двумя столбцами. Мне нужно исключить эти 4000 на основе двух столбцов. У меня 100 ГБ ОЗУ, но Python пытается использовать больше памяти, и процесс останавливается. Есть ли у вас предложения по поводу того, что можно улучшить? Я использую pandas для чтения файла. Размер файла df1 составляет 19 ГиБ

Код выглядит так:

 df1=pd.read_table(current_path + '/df1', delim_whitespace=True, header=None)     
 df2=pd.read_table(current_path + '/df2', delim_whitespace=True,header=None)     
 df1.columns=["col1","col2","col3"]
 df2.columns=["col1","col2"]
df1=df1[~df1.set_index(['col1','col2']).index.isin(df2.set_index(['col1','col2']).index)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...