最近因为需求要处理几十到两百 G 的 CSV 文件,pandas 感觉跑得比较慢,而且貌似是单核?求问有什么好用一点的包吗,单机的 spark 可以吗胜任吗?内存大概近 500g
11 条回复 • 2022-04-15 21:07:33 +08:00
|
1
ipwx 2022 年 4 月 3 日
我很好奇你的 pandas 写法是啥样子的
|
|
2
flgn88 2022 年 4 月 3 日 via iPhone
试试 Dask ?
|
|
3
MeePawn666 2022 年 4 月 3 日 via Android
非分布式场景 spark 没多快吧。考虑到你内存大于数据集,是计算密集型的话多核 /线程确实会有帮助,可以考虑 mkl, openmp 之类的?话说 numpy 其实挺快的了,处理数据应该足够。
|
|
4
yech1990 2022 年 4 月 3 日 via Android
这个数量级就得考虑 pandas 的增强版本了,类似 https://github.com/pola-rs/polars
|
|
5
SuperXX 2022 年 4 月 3 日
我遇到过很多次 pandas 的速度问题,建议直接换 julia 语言,速度提升不是一点点 的
|
|
6
SuperXX 2022 年 4 月 3 日
|
|
7
512357301 2022 年 4 月 3 日 via Android
试试 clickhouse
|
|
8
INCerry 2022 年 4 月 3 日
其实单机 spark 还不如你写个 for 循环来得快
|
|
9
MTMT OP |
|
10
ohayoo 2022 年 4 月 13 日
@yech1990 请问下大佬,pandas 读大文件的时候有 chunksize 参数,如
with pd.read_csv(file, chunksize=50000) as reader: 然后 for 循环这个 reader 想请问下 polars 的类似 chunksize 要怎么设置?看官方文档一直就没看懂,不设置的话 读大文件就报内存分配失败 |
推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide