如何在python中打开拼花(二进制数据类型)文件而不出现RAM错误?

如何在python中打开拼花(二进制数据类型)文件而不出现RAM错误?,python,pandas,performance,dataframe,parquet,Python,Pandas,Performance,Dataframe,Parquet,我将一些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文

我将一些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):
用这条线可以打开更小的拼花地板文件。但我找不到打开大拼花地板文件的任何解决方案。是否有人可以推荐另一种数据类型,它与拼花地板一样紧凑,并且可以毫无问题地打开?或者如何对拼花地板文件进行分块?

不支持任何类型的分块参数,因此不幸的是,不支持,您不能以分段方式读取拼花地板文件,也不能使用该库


但是,如果不需要所有列,可以传入columns=。。。kwarg.

请同时添加导致您看到的错误的代码。Done@AKX,但正如所说,我在打开较小文件时没有问题。好吧,但为什么可以使用read_csv?您推荐哪个库来读取拼花文件?fastparquet库似乎有一些东西可以帮助您:好的,可以打开列,但这不是最佳的解决方案,但只是为了记录,所需的列可以按列=[Column1,Column2,…]打开。谢谢你。