首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vaex日期时间比较

Vaex日期时间比较
EN

Stack Overflow用户
提问于 2020-03-23 23:21:32
回答 1查看 2.1K关注 0票数 0

我有一个从hdf5文件读取的vaex数据帧。它有一个日期列,该列被读取为字符串。我把它转换成了datetime。但是,我不能做任何日期比较。我可以从日期中提取日、月、年等,因此转换是正确的。但是我如何执行像date is介于x和y这样的操作呢?

代码语言:javascript
复制
import vaex
import datetime

vaex_df=vaex.open('filename.hdf5')
vaex_df['pDate']=vaex_df.Date.values.astype('datetime64[ns]')

数据类型与预期一致

代码语言:javascript
复制
print(data.dtypes)
## Date            <class 'str'>
## pDate          datetime64[ns]

现在,我需要根据某个日期筛选出行

代码语言:javascript
复制
start_date=datetime.date(2019,10,1)
vaex_df=vaex_df[(vaex_df.pDate.dt>=start_date)] 
print(vaex_df) # throws SyntaxError: invalid token 

当我尝试查看新的数据帧时,我得到一个无效的令牌。我可以分别提取月份和年份并应用过滤器。但这会给出一个错误的结果

代码语言:javascript
复制
vaex_df=vaex_df[(vaex_df.pDate.dt.month>int(str(start_date)[5:7]))&(vaex_df.pDate.dt.year>=int(str(start_date)[:4]))]

如何在vaex中执行日期范围比较操作?

EN

回答 1

Stack Overflow用户

发布于 2020-03-25 08:17:51

来自numpy works的datetime

代码语言:javascript
复制
#Instead of 
start_date=datetime.date(2019,10,1) 
#Use 
start_date=np.datetime64('2019-10-01')

在vaex数据帧上

代码语言:javascript
复制
vaex_df=vaex_df[(vaex_df.pDate>=start_date)] 
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60816437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档