首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dask dataframe:合并时出现内存错误

Dask dataframe:合并时出现内存错误
EN

Stack Overflow用户
提问于 2016-08-24 13:21:27
回答 1查看 1K关注 0票数 6

我正在使用一些github用户数据,并试图创建一个同一城市的所有人的图表。为此,我需要使用dask中的合并操作。不幸的是,github的用户基数是6M,合并操作似乎正在导致最终的数据帧爆炸。我使用了以下代码

代码语言:javascript
复制
import dask.dataframe as dd
gh = dd.read_hdf('data/github.hd5', '/github', chunksize=5000, columns=['id', 'city']).dropna()
st = dd.read_hdf('data/github.hd5', '/github', chunksize=5000, columns=['id', 'city']).dropna()
mrg = gh.merge(st, on='city').drop('city', axis=1)
mrg['max'] = mrg.max(axis=1)
mrg['min'] = mrg.min(axis=1)
mrg.to_castra('github')

我可以使用这段代码合并其他条件,比如名称/用户名,但是当我尝试运行上面的代码时,我得到了MemoryError。

我已经尝试过使用同步/多处理和线程调度程序来运行它。

我正尝试在一台内存为8 8GB的戴尔笔记本电脑i7 4core上执行此操作。是不是应该以分块的方式来执行这个操作,或者我是不是搞错了?使用pandas数据帧迭代器编写代码是唯一的出路吗?

EN

回答 1

Stack Overflow用户

发布于 2021-10-05 05:11:11

不再支持Castra,因此建议使用HDF。根据注释,使用to_hdf()写入多个文件解决了内存错误:

mrg.to_hdf('github-*.hdf')

相关文档:https://docs.dask.org/en/latest/generated/dask.dataframe.DataFrame.to_hdf.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39114990

复制
相关文章

相似问题

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