我需要来自两个csv文件(记录数量不同)的数据。两个文件中的列相同,但值不同。我必须将df1的'Education_Period'列与df2的'Education_Period'列进行匹配,才能基于完全相同的'Education_Period'和最接近的行(最接近的阈值6个月)'Program_startDate'查找行。对于最接近的“ Program_startDate”,代码需要将df1的“ Program_startDate”与df2的“ Program_startDate”进行比较。
请注意,在两个条件都匹配的情况下,应删除或删除两个数据框中的相应记录,以免再次匹配相同的记录。
输出应写入df3和df4(如表所示)。如果有多个具有相似最近日期的行,则选择一个。 最后,df3和df4的长度相同。请指导我如何在python中完成。谢谢
Input:
df2
Student_IDs Education_Period Waiting_Period Program_startDate
23C 100.5 5.5 29/03/2018
34B 77.2 3.0 12/12/2009
11X 77.2 8.5 14/09/2019
88N 99.9 12.0 20/03/2017
22A 77.2 12.0 30/03/2015
df3
Student_IDs Education_Period Waiting_Period Program_startDate
11X 30.5 40.0 29/03/2018
99Y 77.2 20.0 12/12/2009
88Z 14.1 19.1 14/09/2016
12Z 77.2 15.0 26/06/2018
234M 100.5 19.2 30/03/2015
34M 100.5 44.5 30/04/2018
Output:
df4
Student_IDs Education_Period Waiting_Period Program_startDate
23C 100.5 5.5 29/03/2018
34B 77.2 3.0 12/12/2009
11X 77.2 8.5 14/09/2019
df5
Student_IDs Education_Period Waiting_Period Program_startDate
234M 100.5 19.2 30/04/2018
99Y 77.2 20.0 12/12/2009
12Z 77.2 15.0 26/06/2018