Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 31, 2020 14:49:47

Master_Sergius
Зарегистрирован: 2013-09-12
Сообщения: 271
Репутация: +  7  -
Профиль   Отправить e-mail  

Pandas merge multiple dataframes

Здравствуйте,

Есть, как обычно в секретном проекте, такой цикл:

  
main_dataframe = get_main_dataframe()
new_dataframe = pd.DataFrame()
 
for df in list_of_dataframes:
     temp_df = main_dataframe.merge(df, how='left', on=['key1', 'key2'])
     new_dataframe = new_dataframe.append(temp_df)
 
main_dataframe = new_dataframe[~new_dataframe['key1'].isnull()]

Здесь какая-то неочевидная мне бизнес-логика, раз делается такое. И всё было бы хорошо, но когда список
 list_of_dataframes
большой - это выполняется очень долго: 200 dataframes - добавляется примерно за 3 минуты. А в идеале он должен работать с размером до 1000 dataframes.

Есть ли возможность оптимизировать как-то такой кусок кода?



———————————————————————————
Мой блог о семействе *nix: http://nixtravelling.blogspot.com/

Отредактировано Master_Sergius (Авг. 31, 2020 19:25:08)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version