首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理格式化为GiB文件的大型>30个SAS7DBAT数据集?

如何处理格式化为GiB文件的大型>30个SAS7DBAT数据集?
EN

Stack Overflow用户
提问于 2021-12-05 23:33:34
回答 1查看 169关注 0票数 1

我有这30个GiB SAS7BDAT文件,它们对应着一年的数据。当我尝试使用pd.read_sas()导入文件时,我会得到一个与内存相关的错误。在研究中,我听说有人提到使用Dask,将文件分割成更小的块或SQL。这些答案听起来相当宽泛,而且由于我是新来的,我真的不知道从哪里开始。如果有人能和我分享一些细节,我会很感激的。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2021-12-06 14:04:26

我不知道dask的这种数据的分区加载器。然而,熊猫API接口显然允许您按块流数据,这样您就可以以任何方便的格式将这些块写入其他文件,然后通过顺序或使用dask处理这些文件。块大小的最佳值将取决于您的数据和可用内存。

下面的内容应该可以使用,但我没有任何这类数据可以试用。

代码语言:javascript
复制
with pd.read_sas(..., chunksize=100000) as file_reader:
    for i, df in enumerate(file_reader):
        df.to_parquet(f"{i}.parq")

然后,您可以(并行地)用

代码语言:javascript
复制
import dask.dataframe as dd
ddf = dd.read_parquet("*.parq")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70239485

复制
相关文章

相似问题

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