Python 如何基于一个相似的列合并两个数据帧,其中条件位于另一列上?

Python 如何基于一个相似的列合并两个数据帧,其中条件位于另一列上?,python,pandas,dataframe,Python,Pandas,Dataframe,我想基于一个类似的列col1将第一个数据帧dt1与第二个数据帧dt2合并,其中日期时间列col2上的条件是:我想要的是,第一个dt2['Date2']大于dt1['Date1'] dt1.head() ID col1 Date1 0 A 2019-12-01 1 B 2019-12-01 2 A 2019-12-02 3 C 2019-12-02 4 C 2019-12-02 5 B 2019-12-03 6 A 2019-12-0

我想基于一个类似的列col1将第一个数据帧dt1与第二个数据帧dt2合并,其中日期时间列col2上的条件是:我想要的是,第一个dt2['Date2']大于dt1['Date1']

dt1.head()
ID  col1    Date1
0   A   2019-12-01
1   B   2019-12-01
2   A   2019-12-02
3   C   2019-12-02
4   C   2019-12-02
5   B   2019-12-03
6   A   2019-12-03
7   A   2019-12-03

dt2.head()
ID  col1    Date2
0   A   2019-12-02
1   A   2019-12-04
2   B   2019-12-04
3   C   2019-12-03
结果应该是这样的:

ID  col1    Date1   Date2
0   A   01/12/2019  2019-12-02
1   B   01/12/2019  2019-12-04
2   A   02/12/2019  2019-12-04
3   C   02/12/2019  2019-12-03
4   C   02/12/2019  2019-12-03
5   B   03/12/2019  2019-12-04
6   A   03/12/2019  2019-12-04
7   A   03/12/2019  2019-12-04

请显示一些示例数据我希望这些修改可以澄清我的问题?非常感谢我提供了如何使用merge_asof解决此问题一些示例数据我希望这些修改可以澄清我的问题?非常感谢我提供了如何使用merge_asof解决此问题