месяц панд между предыдущей записью того же клиента - PullRequest
0 голосов
/ 01 октября 2018

У меня есть фрейм данных со списком идентификаторов клиентов и той датой покупки, когда клиент повторяется. Мне нужен новый столбец с количеством дней между датой покупки и предыдущей записью курса покупки

Cust Data        Days
123  2018-08-01
123  2018-09-01   31
124  2018-05-05
125  2017-01-25
125  2017-02-12   18
125  2017-06-14  122

Есть предложения?

1 Ответ

0 голосов
/ 01 октября 2018

Сначала необходимо преобразовать 'Data' в формат даты и времени.

df['Data'] = pd.to_datetime(df['Data'])

А затем получить разницу между днями:

df[['Cust','Data']].groupby(['Cust']).diff()

      Data
0      NaT
1  31 days
2      NaT
3      NaT
4  18 days
5 122 days

Чтобы удалить NaT (NaN даты и времени), выможно либо уронить их (df.dropna()), либо заполнить их (df.fillna(0)).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...