首页 > 解决方案 > 减去日期,只取出天数作为数字

问题描述

 #Under d.types i can confirm they are both datetime objects
 date1      datetime64[ns]
 date2      datetime64[ns]

在此处输入图像描述

 df_test['snaptoexpectedStart'] = df['date1'] - df['date2']
 TypeError: '<' not supported between instances of 'str' and 'int'

当我试图减去的两列都采用正确的格式时,我不明白为什么会出现该错误。

标签: pythondatetime

解决方案


我想这与我想的日期时间格式有关,请尝试以这种方式进行转换以查看它是否有效:

from datetime import datetime
df_test['snaptoexpectedStart'] = datetime(df['date1']) - datetime(df['date2'])

如果您只想获取天数,请尝试以下操作:

df_test['snaptoexpectedStart'] = (df_test['date1'] - df_test['date2Date']).dt.days

推荐阅读