【发布时间】:2017-11-19 10:54:51
【问题描述】:
我有以下数据框。
Date Returned Start Date
0 2017-06-02 2017-04-01
1 2017-06-02 2017-04-01
2 2017-06-02 2017-04-01
3 2017-06-02 2017-02-28
4 2017-06-02 2017-02-28
5 2017-06-02 2016-07-20
6 2017-06-02 2016-07-20
两列都是datetime64类型。
subframe[['Date Returned','Start Date']].dtypes
Out[9]:
Date Returned datetime64[ns]
Start Date datetime64[ns]
dtype: object
然而,当我尝试查找两列日期之间的时间增量时,我得到了这个错误。
subframe['Delta']=subframe['Date Returned'] - subframe['Start Date']
TypeError: data type "datetime" not understood
有解决办法吗?我已经尝试了我能想到的一切,并且在这一点上拔出了大部分头发。任何帮助是极大的赞赏。 I did find someone posting the same problem, but no one really answered it.
【问题讨论】:
-
它在我的电脑上运行良好。
-
在我的情况下,相同的代码不会出错。您使用的是什么版本?或者您可以卸载软件包并重试。
-
我确实尝试过卸载并重新安装 pandas。结果相同。这是在 Windows 7 上运行的,但我认为这不会有什么不同。
-
我没有足够的评论点数,但我在 Pandas 18.1 中遇到了同样的错误。有趣的是,如果我选择一行,它就会起作用。没有任何缺失值,所以这是非常奇怪的行为。
标签: python pandas datetime timedelta