热线电话:13121318867

登录
2019-01-26 阅读量: 727
在一个numpy数组类型问题

在一个numpy数组中是dtype np.datetime64还是pandas对象datetime.date更快?

我想尽可能快地过滤日期数组?我应该使用熊猫还是numpy?如果我使用numpy我应该使用哪种数据类型?

我有一个大型数据框,我需要遍历一个范围并从日期范围中提取数据。这比我需要的时间更长,因为我也在测试数据并重新运行它变得非常繁琐。

解决办法:

在测试了三个选项后,使用numpy和pandas对象是最快的。当数据集变大并且与创建numpy数组分开测试“输出”时,这非常重要。

*仅限Pandas数据帧

%%timeit

start_date = date(2015, 1, 26)

end_date = date(2018, 1, 26)

df = pd.DataFrame(pd.date_range(start_date, end_date), columns=['Date'])

df['Date'] = pd.to_datetime(df['Date']).dt.date

df['Range'] = range(df.shape[0])

max_date = date(2017, 1, 1)

df.loc[df['Date'] <= max_date]

3.02 ms ± 126 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子