【发布时间】:2021-03-21 11:37:37
【问题描述】:
嗨 - 我想合并两个 python 数据帧,但不想将两个数据帧中的所有列都带到我的新数据帧中。在下图中,如果我在“acct”上加入 df1 和 df2,并想从 df1 中带回所有列,并且只从 df2 中带回“实体”,我将如何写?我不想删除任何列,所以进行正常合并不是我想要的。任何人都可以帮忙吗?谢谢!
【问题讨论】:
标签: python pandas dataframe merge
嗨 - 我想合并两个 python 数据帧,但不想将两个数据帧中的所有列都带到我的新数据帧中。在下图中,如果我在“acct”上加入 df1 和 df2,并想从 df1 中带回所有列,并且只从 df2 中带回“实体”,我将如何写?我不想删除任何列,所以进行正常合并不是我想要的。任何人都可以帮忙吗?谢谢!
【问题讨论】:
标签: python pandas dataframe merge
执行合并操作时,您可以修改函数中的数据框对象,这意味着基础对象 df1 和 df2 保持不变。一个示例如下所示:
df_result = df1.merge(df2[ ['acct','entity'] ], on ='acct')
这将让您在不修改任何原始数据框的情况下进行部分合并。
【讨论】:
df_result = df1.merge(df2[['account','entity']], left_on ='acct', right_on='account')。