IIUC, вы можете сделать все это из pandas
, без модуля datetime. Я предполагаю, что ваш начальный фрейм данных выглядит примерно так:
>>> dataframe1
Dispatch Date Order Date
0 2017-03-02 2017-02-13
1 2017-03-06 2017-02-24
В этом случае вы можете сделать:
# set columns to datetime:
dataframe1['Order Date'] = pd.to_datetime(dataframe1['Order Date'])
dataframe1['Dispatch Date'] = pd.to_datetime(dataframe1['Dispatch Date'])
# Make a new column for the difference in days
dataframe1['day_diff'] = dataframe1['Dispatch Date'] - dataframe1['Order Date']
Какие выходы:
>>> df
Dispatch Date Order Date day_diff
0 2017-03-02 2017-02-13 17 days
1 2017-03-06 2017-02-24 10 days
Объяснение : при вычитании двух объектов даты и времени в pandas
получается объект Timedelta
(как в новом столбце day_diff
). Если вы хотите, чтобы он представлял целое число дней, просто добавьте dt.days
к этой последней команде:
dataframe1['day_diff'] = (dataframe1['Dispatch Date'] - dataframe1['Order Date']).dt.days