python – Pandas无效的类型比较错误

python – Pandas无效的类型比较错误,第1张

概述由于某些原因,我在Pandas更新日志中找不到0.17.1,将datetime系列与int值(Unix纪元)进行比较不再适用.任何人都可以解释一下,或者指向更改日志中的正确部分? 工作在0.16.2 >>> import pandas as pd>>> import datetime>>> d = pd.Series([datetime.datetime(2016, 1, 1), dateti @H_403_2@ 由于某些原因,我在Pandas更新日志中找不到0.17.1,将datetime系列与int值(Unix纪元)进行比较不再适用.任何人都可以解释一下,或者指向更改日志中的正确部分?

工作在0.16.2

>>> import pandas as pd>>> import datetime>>> d = pd.SerIEs([datetime.datetime(2016,1,1),datetime.datetime(2016,1)])>>> d0   2016-01-011   2016-01-01dtype: datetime64[ns]>>> d.dtypedtype('<M8[ns]')>>> d > 100    True1    Truedtype: bool

0.17.1中的错误

>>> import pandas as pd>>> import datetime>>> d = pd.SerIEs([datetime.datetime(2016,1)])>>> d > 10Traceback (most recent call last):  file "<stdin>",line 1,in <module>  file "/Users/sven/tmp/pandastest/pandas-0.17.1/lib/python2.7/site-packages/pandas/core/ops.py",line 726,in wrapper    res = na_op(values,other)  file "/Users/sven/tmp/pandastest/pandas-0.17.1/lib/python2.7/site-packages/pandas/core/ops.py",line 657,in na_op    raise TypeError("invalID type comparison")TypeError: invalID type comparison
解决方法 您仍然可以使用显式转换:

u_time_ns = d.apply(lambda x: x.to_datetime64().vIEw('int64'))u_time_ns0    14516064000000000001    1451606400000000000dtype: int64u_time_ns > 100    True1    Truedtype: bool

或者,如果您想依赖将pandas时间戳存储为datetime64 [ns]:

u_time_ns = d.vIEw('int64')

对不起,不知道为什么会改变.

@H_403_2@ 总结

以上是内存溢出为你收集整理的python – Pandas无效类型比较错误全部内容,希望文章能够帮你解决python – Pandas无效的类型比较错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1197548.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存