Pandas查找,将一个数据帧中的一列映射到另一个不同数据帧中的列

14

我有两个pandas数据框:df1和df2。

df1有X、Y和weeknum三列。 df2有Z、weeknum和datetime三列。

我想保留df1,并在其中增加一列,该列对应于weeknum的datetime。

我可以使用merge,但必须有一个更简洁的方法,而不必删除Z列。

1个回答

19

您可以在合并语法中提取所需的列

df1 = df1.merge(df2[['weeknum', 'datetime']], on=['weeknum'])

这将确保您在结果中没有任何不需要的 df2 列,但您不必在此过程中从第二个 DataFrame 中删除这些列。


1
请注意,合并默认为“inner”,即`从两个数据框中的键的交集开始,类似于SQL内连接; 因此,如果df1中的行在df2中不存在,则可能会丢失这些行。 - Sonic Soul

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接