Как рассчитать разницу между объектами datetime и получить интервал времени на основе количества дней - PullRequest
1 голос
/ 11 июля 2019

У меня есть 2 столбца даты и времени, например:

Столбец 1:

0   2016-06-30 16:57:12.219297
1   2016-07-19 16:02:21.408984
2   2016-07-19 16:02:21.408984
3   2017-08-31 16:35:14.414915
4   2017-08-31 16:35:14.414915
5   2016-07-14 19:39:21.029636
6   2018-07-30 15:10:41.919970
7   2016-08-16 13:50:16.941665
8   2017-04-27 22:19:32.264015
9   2018-06-25 19:47:42.126527

Колонка 2:

0   2019-07-02 21:06:06.080788
1   2019-06-02 21:58:55.188987
2   2019-06-02 21:59:25.069153
3   2016-07-14 19:39:21.029636
4   2018-07-30 15:10:41.919970
5   2017-08-31 16:35:14.414915
6   2017-08-31 16:35:14.414915
7   2019-01-21 15:20:07.471152
8   2017-07-20 17:24:44.189102
9   2017-07-20 17:24:44.189102

Я хочу рассчитать разницу во времени между двумя и получить результаты в днях. Как только это будет сделано, я хочу сохранить результаты между интервалом <45 дней и> 45 дней.

Как я могу это сделать?

Заранее спасибо

1 Ответ

1 голос
/ 11 июля 2019

Используйте Series.dt.days для преобразования времени в дни и фильтрации по boolean indexing:

df['diff'] = (df['col2'] - df['col1']).dt.days

df1 = df[df['diff'] < 45]
df2 = df[df['diff'] > 45]
...