Начиная с двух фреймов данных (df1 и df2), мне нужно построить еще один (df3), выполнив слияние в столбце «ХПК» и включив новый столбец «ДЕЛЬТА», который содержит минимальную разницу между датой, соответствующей«ХПК» и все вторые кадры данных, которые имеют одинаковую «ХПК».
import pandas as pd
df1 = pd.DataFrame({
'COD': ['cod1', 'cod2', 'cod2', 'cod1', 'cod3', 'cod2'],
'DATE_1': ['30-01-2019', '22-01-2019', '30-08-2019', '22-01-2019', '01-01-2019', '30-01-2019']})
df2 =pd.DataFrame({
'COD': ['cod1', 'cod1', 'cod1', 'cod2', 'cod3', 'cod2', 'cod1'],
'DATE_2': ['24-01-2019', '21-01-2019', '02-08-2019', '03-01-2019', '30-01-2019', '22-01-2019', '30-01-2019']})
df1['DATE_1'] = pd.to_datetime(df1['DATE_1'])
df2['DATE_2'] = pd.to_datetime(df2['DATE_2'])
ожидается:
COD DATE_1 DELTA_min
0 cod1 30-01-2019 6
1 cod2 22-01-2019 0
2 cod2 30-08-2019 239
3 cod1 22-01-2019 2
4 cod3 01-01-2019 29
5 cod2 30-01-2019 8