大熊猫:合并来自两个不同列表的多个数据框

时间:2019-12-12 07:21:32

标签: python pandas

我有两个存在多个数据帧的列表

df_lst_1 = [df_1,df_2,df_3]
df_lst_2 = [df_4,df_5,df_6]

现在,我正在尝试合并数据框,但要与骑手合并。就是说,我希望将df_1与df_4,df_2合并到df_5。即元素明智的合并。 如果使用以下代码,则无法实现相同的目的。

df_m = [] 
for p in df_lst_1:
  for c in df_lst_2:
    df_merge = p.merge(c,how='inner',on='KUNNR')
    df_m.append(df_merge)

上面的代码产生9个数据帧。但是,我需要三个“合并”数据框。

对此有任何线索吗?如何在此处使用“ zip”或“ map”功能?

1 个答案:

答案 0 :(得分:2)

我相信您想先zip然后再merge进行列表理解:

df_m = [p.merge(c,how='inner',on='KUNNR') for p,c in zip(df_lst_1, df_lst_2)] 

或使用循环解决方案:

df_m = [] 
for p,c in zip(df_lst_1, df_lst_2):
    df_merge = p.merge(c,how='inner',on='KUNNR')
    df_m.append(df_merge)