Вычисление разницы между минимальной и максимальной датой, а затем сравнение с текущим значением даты в pandas df - PullRequest
0 голосов
/ 03 марта 2020

У меня есть данные кампании, где я хочу найти время выполнения, основываясь на минимальной, максимальной и текущей дате. Например:

У меня есть такие данные:

Date         Campaign     
1.1.2020       A
2.1.2020       A
3.1.2020       A
1.1.2020       B
2.1.2020       B

Я использовал минимальное и максимальное агрегирование, чтобы найти минимальное и максимальное значения даты, например:

 df_min_max_date = df.groupby('Campaign')['Date'].agg(['min', 'max']).reset_index()

    Date         Campaign       min               max
        1.1.2020       A      1.1.2020          3.1.2020  
        2.1.2020       A      1.1.2020          3.1.2020  
        3.1.2020       A      1.1.2020          3.1.2020  
        1.1.2020       B      1.1.2020          2.1.2020
        2.1.2020       B      1.1.2020          2.1.2020

Но теперь мне нужен еще один столбец, который объясняет время выполнения: желаемый вывод будет выглядеть так:

 Date         Campaign       min               max     runtime
 1.1.2020       A      1.1.2020          3.1.2020       0%
 2.1.2020       A      1.1.2020          3.1.2020       50%
 3.1.2020       A      1.1.2020          3.1.2020       100%
 1.1.2020       B      1.1.2020          2.1.2020        0%
 2.1.2020       B      1.1.2020          2.1.2020       100%
...