Pandas 利用concat来加速merge。

优点:

  • 加快速度
  • 不会改变data type

步骤:

  1. df1取出merge时参考的列,命名merged_gf
  2. 进行merge
  3. 取出merge后新增的列
  4. df与新增的列进行concat
def merge_by_concat(df1, df2, merge_on):
    merged_gf = df1[merge_on]
    merged_gf = merged_gf.merge(df2, on=merge_on, how='left')
    new_columns = [col for col in list(merged_gf) if col not in merge_on]
    df1 = pd.concat([df1, merged_gf[new_columns]], axis=1)
    return df1
最后修改:2022 年 03 月 18 日 12 : 34 AM
如果觉得我的文章对你有用,请随意赞赏