我有日期:
dateTo=pd.to_datetime('today').strftime('%Y-%m-%d')
我想从日期列中减去dateTo
:
number dates coord
AC 10 2018-07-10 11.54
AC 10 2018-07-11 11.19
AN 5 2018-07-12 69.40
所需的输出将是一个新列df['datepond']
,其中包含减法的输出。我希望这个输出是整数。
我尝试的是这里给出的响应 Pandas: Subtracting two date columns and the result being an integer :
df['datepond']=(pd.Timestamp(dateTo)-pd.to_datetime(df['dates']))/ np.timedelta64(1, 'D')
在 numpy 1.12.1 版本中,它工作得很好,但我现在在 numpy 1.15.2 中,它输出
TypeError: data type "datetime" not understood
如何获得所需的输出?
最佳答案
您可以尝试Timestamp.floor
用于删除时间并将时间增量转换为天 Series.dt.days
:
df['datepond']= (pd.to_datetime('today').floor('d') - pd.to_datetime(df['dates'])).dt.days
print (df)
number dates coord datepond
AC 10 2018-07-10 11.54 97
AC 10 2018-07-11 11.19 96
AN 5 2018-07-12 69.40 95
关于python - 尝试将一列日期减去另一个日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52814090/