【问题标题】:Is there a pyarrow equivalent of the chunksize argument in pandas.read_csv?pandas.read_csv 中是否有与 chunksize 参数等效的 pyarrow?
【发布时间】:2019-05-24 02:53:49
【问题描述】:

我希望在 RAM 中处理一个大文件 (5 gb),但出现内存不足错误。有没有办法像pandas.read_csv 那样分块处理镶木地板文件?

import pyarrow.parquet as pq

    def main():
        df = pq.read_table('./data/train.parquet').to_pandas()            

    main()   

【问题讨论】:

  • 目前还没有,但是关于添加这个选项还有一些问题。请注意,在即将发布的 0.12 版本中,内存使用将得到显着改善

标签: pandas parquet pyarrow


【解决方案1】:

目前还没有,但添加此选项存在一些问题(请参阅https://issues.apache.org/jira/browse/ARROW-3771,其他)。请注意,在即将发布的 0.12 版本中,内存使用将得到显着改善。

同时,您可以使用pyarrow.parquet.ParquetFile 及其read_row_group 方法一次读取一个行组。

【讨论】:

  • 感谢您告诉我。您能否建议另一种处理如此大文件的方法? (不使用 Spark 框架)
  • 我在回答中添加了一条注释,建议使用ParquetFileread_row_group 方法
猜你喜欢
  • 2017-11-29
  • 1970-01-01
  • 1970-01-01
  • 2011-12-11
  • 2018-05-21
  • 2019-08-01
  • 1970-01-01
  • 2012-06-05
  • 1970-01-01
相关资源
最近更新 更多