我有两个数据表,它们的列与其中一列为日期的列相同。
当主键相同时,我尝试连接数据帧并删除日期较早的行。
输入(df1和df2(:
pk1 | pk2 | C | DATE
1 | 2 | 3 | 05-09-22
2 | 3 | 4 | 05-09-22
pk1 | pk2 | C | DATE
1 | 2 | 5 | 06-09-22
输出:
pk1 | pk2 | C | DATE
2 | 3 | 4 | 05-09-22
1 | 2 | 5 | 06-09-22
您需要在保留第一个的同时丢弃_duplicates。
df = pd.concat([df1,df2]) # concating
df.sort_values(by=['DATE'], ascending=True, inplace=True) # sorting by date
df = df.drop_duplicates(subset=['pk1', pk2], keep='first') # dropping duplicates