AttributeError: __enter__ while using with statement with read_parquet

AttributeError: __enter__ while using with statement with read_parquet

我想打开特定文件夹中的所有 parquet 文件并用它绘制散点图。我使用了以下代码:

for file in glob.glob("*.parquet"):
    with pd.read_parquet(file, columns=["cordx", "cordy"]) as df:
        make some scaterplot

文件可以找到,因为我让python打印file成功了。但是我收到 AttributeError: __enter__read_parquet 是打开这些文件的正确方法。当我不使用 columns=[ ] 时,我得到 pyarrow.lib.ArrowIOError: Arrow error: Out of memory: malloc of size 9771487328 failed 错误,因为文件非常大。所以有必要只加载那些列。

此错误告诉您 pandas.read_parquet 没有实现上下文管理器,这意味着您不能使用 with 调用它,因为缺少 __enter____exit__ 方法.看这里