首页 > 解决方案 > Pandas 更高效地合并

问题描述

我有多个表需要在我的代码中合并,但它们都有很多附加的“绒毛”列。我当前合并表的过程如下:

df = pd.merge(df, df2, on=[key])
df = pd.drop([[insert not-needed columns], axis=1)
df = df.rename(columns={'column_x': 'column'})

我还看到人们首先在新的查找表中隔离列:

ref = df2['column1','key']
df = pd.merge(df, ref, on=[key])

有没有更快的方法来做类似于 Pandas 中的 VLOOKUP(但包含多个列)的操作?

标签: pythonpandas

解决方案


是的,您可以先过滤它,merge然后过滤它应该更快merge

ref = df2[['col1','col2',...., 'coln','key']]
df = pd.merge(df, ref, on=[key])

推荐阅读