如何在 python 中打开镶木地板(二进制数据类型)文件而不会出现 RAM 错误?

How to open parquet (binary data type) files in python without getting RAM error?

我将一些 CSV 数据转换为 parquet,并且能够将存储量从 2.5 GB 减少到 450 MB。我使用以下代码打开镶木地板文件:

df= pd.read_parquet("PATH/file9.parquet", engine='auto')

我的问题是在尝试打开 parquet 文件时出现以下错误。

pyarrow.lib.ArrowIOError: Arrow error: Out of memory: malloc of size 2941974336 failed

我知道可以通过按如下方式分块打开大的 csv 文件:

for chunk in pd.read_csv("PATH/file9.csv", chunksize=chunksize):

可以使用该行打开较小的 parquet 文件。但我找不到打开大型镶木地板文件的任何解决方案。任何人都可以推荐另一种像镶木地板一样紧凑并且可以毫无问题地打开的数据类型吗?或者如何分块镶木地板文件?

underlying read call 不支持任何类型的分块参数,所以很遗憾,您不能以分段方式读取 Parquet 文件,无论如何都不能使用该库。

不过,如果您不需要所有列,则可以传入 columns=(...) kwarg。