熊猫根据多列中的值进行映射

时间:2019-02-25 05:02:04

标签: python python-3.x pandas pandas-groupby data-manipulation

我想使用一个映射,该映射基于2个或更多系列的对应值将唯一值映射到DataFrame 例如,如果c是使用列“ a”和“ b”的值的映射,如图所示

map

然后对于下面的数据框,我的映射应为:

df

就像上面显示的数据帧中的每对(0,0),c的值为1,(1,1)对的值为4,依此类推。

逻辑应该扩展到多列,即可以有C1,C2,C3列,对于这些中的每一个的组合唯一值,我应该能够将一个值映射到包含这些值的数据帧。

第二个数据帧的行顺序也不得更改

最优雅的方法是什么?感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您可以使用merge

df2.merge(df1, how="left")

另请参阅merging section of the docs