我将一些CSV数据转换为镶木地板,并能够将存储量从2,5 GB减少到450 MB。我使用以下代码打开镶木地板文件:
df= pd.read_parquet("PATH/file9.parquet", engine='auto')
我的问题是,当我尝试打开镶木地板文件时,我收到以下错误。
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 文件,无论如何也不能使用该库。
但是,如果您不需要所有列,则可以传入columns=(...)
kwarg。