首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python Pandas与C++解决方案在文本CSV数据导入方面的性能比较

Python Pandas与C++解决方案在文本CSV数据导入方面的性能比较
EN

Stack Overflow用户
提问于 2013-11-08 00:35:41
回答 1查看 3.2K关注 0票数 2

我们目前有一个用C++编写的数据导入/转换工具,它主要处理文本数据(例如,几种不同格式的时间戳),并应用一些标准化/清理。

当前的解决方案速度非常快,性能非常关键。例如,我们优化以最小化/避免解析循环中的对象分配,因为这将为我们处理的每一行调用,并可能产生严重的性能影响。

我们想要实现的是灵活地添加新的输入格式或简单地通过更改脚本/配置文件来应用额外的转换,而不是重新编译应用程序。

问题是:我们是否能够使用Python Pandas数据处理框架实现类似的性能,因为它中的大多数似乎也使用了低级优化的C代码。

(这里的“可比较”是指性能差异在一定的范围内,可以通过添加2-4个额外的线程来弥补)

Pandas是这项工作的合适工具吗?还是有不同的建议?

EN

回答 1

Stack Overflow用户

发布于 2013-11-08 02:47:54

我不想让你感到困惑,但是如果你真的想要速度,那么HDF5是可行的,甚至不需要解析csv (所以一点预处理就可以走很长一段路)。a related comparision of hdf and sql

代码语言:javascript
复制
In [9]: df = DataFrame(randn(1000000,2),columns=list('AB'))

In [10]: df['date'] = Timestamp('20130101')

In [11]: df.to_csv('test.csv',mode='w')

In [12]: df.to_hdf('test.h5','df',mode='w')

In [13]: %timeit read_csv('test.csv',index_col=0)
1 loops, best of 3: 948 ms per loop

In [14]: %timeit pd.read_hdf('test.h5','df')
10 loops, best of 3: 20.2 ms per loop
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19841456

复制
相关文章

相似问题

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