我有两个数据框。第一个代表来自client
处date
的特定交易。第二个数据帧显示每个group
被分配给哪个client
。
df1
client date
1 01.01.2020
2 01.01.2020
3 02.01.2020
4 03.01.2020
df2
client group beginning end
1 11 01.01.2019 NaN
2 12 01.01.2019 01.07.2019
2 11 02.07.2019 01.02.2020
2 13 02.02.2020 NaN
3 13 01.08.2019 NaN
4 12 01.09.2019 31.01.2020
4 14 01.02.2020 NaN
我需要在df1
中添加第三列,以显示在事务group
上client
被分配给哪个date
。所以预期的输出是这样的:
client date group
1 01.01.2020 11
2 01.01.2020 11
3 02.01.2020 13
4 03.01.2020 12
答案 0 :(得分:0)
您应该在merge
参数中将熊猫on
与多列配合使用:
df_output = df1.merge(df2[['client','group','beginning']],how='left',left_on=['client','date'],right_on=['client','beginning'])