pandas数据帧中的日期时间不会相互减去

Gra*_*ich 9 python datetime subtraction pandas

我试图找到日期时间格式的pandas数据帧中两列之间的时间差异.

下面是我的数据框中的一些数据和我一直在使用的代码.我已经三次检查这两个列dtypes是datetime64.

我的数据:

date_updated                  date_scored 
2016-03-30 08:00:00.000       2016-03-30 08:00:57.416  
2016-04-07 23:50:00.000       2016-04-07 23:50:12.036 
Run Code Online (Sandbox Code Playgroud)

我的代码:

data['date_updated'] = pd.to_datetime(data['date_updated'], 
format='%Y-%m-%d %H:%M:%S')
data['date_scored'] = pd.to_datetime(data['date_scored'], 
format='%Y-%m-%d %H:%M:%S')
data['Diff'] =  data['date_updated'] - data['date_scored']
Run Code Online (Sandbox Code Playgroud)

我收到的错误消息:

TypeError: data type "datetime" not understood
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激,谢谢!

我的解决方案:

for i in raw_data[:10]:
scored = i.date_scored
scored_date =  pd.to_datetime(scored, format='%Y-%m-%d %H:%M:%S')
if type(scored_date) == "NoneType":
    pass
elif scored_date.year >= 2016:
    extracted = i.date_extracted
    extracted =  pd.to_datetime(extracted, format='%Y-%m-%d %H:%M:%S')
    bank = i.bank.name
    diff = scored - extracted
    datum = [str(bank), str(extracted), str(scored), str(diff)]
    data.append(datum)
else:
    pass
Run Code Online (Sandbox Code Playgroud)

ac2*_*001 18

我使用上面的语法遇到了同样的错误(虽然在另一台机器上工作):

data['Diff'] =  data['date_updated'] - data['date_scored']
Run Code Online (Sandbox Code Playgroud)

它适用于我的新机器:

data['Diff'] =  data['date_updated'].subtract(data['date_scored'])
Run Code Online (Sandbox Code Playgroud)