Python 无法将datetime列与从DB获取的datetime进行比较
我试图比较pandas datetime和datetime从DB获取的数据Python 无法将datetime列与从DB获取的datetime进行比较,python,pandas,datetime,Python,Pandas,Datetime,我试图比较pandas datetime和datetime从DB获取的数据 result = '2021-01-01 04:51:53' 日期时间列 review_updatedAt 0 2021-01-01 00:31:14+00:00 1 2021-01-01 01:55:31+00:00 2 2021-01-01 02:43:28+00:00 3 2021-01-01 07:23:11+00:00 4 2021-01-01 05:38:10+00:00 还有一个从
result = '2021-01-01 04:51:53'
日期时间列
review_updatedAt
0 2021-01-01 00:31:14+00:00
1 2021-01-01 01:55:31+00:00
2 2021-01-01 02:43:28+00:00
3 2021-01-01 07:23:11+00:00
4 2021-01-01 05:38:10+00:00
还有一个从数据库获取的日期时间值
result = '2021-01-01 04:51:53'
我想筛选大于result
我的努力:
df['review_updatedAt'] = pd.to_datetime(df['review_updatedAt'], format='%Y-%m-%d %H:%M:%S', exact=False)
df = df[df['review_updatedAt'] > result]
我犯了个错误
TypeError:dtype=datetime64[ns,UTC]和datetime之间的比较无效
我还提到了现有的问题
您的代码对我来说工作得非常好,但是简单地复制代码
结果对我来说是一个字符串而不是日期时间。
由于您的TypeError
意味着您的日期时间到了,因此此清理可能就足够了:
result = pd.Timestamp(result,tz='UTC')
问题是,您正在比较aware datetime(UTC;由“+00:00”表示)和naive datetime('2021-01-01 04:51:53')。您也可以简单地使result
感知,result=pd.Timestamp('2021-01-01 04:51:53Z')
。