You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pandas.read_parquet时遇OSError: [Errno 22] Invalid argument错误求助

解决读取Parquet文件时的OSError: [Errno 22] Invalid argument错误

问题场景

执行以下代码读取后缀为.rot的Parquet格式数据表时触发错误:

import pandas as pd

file = pd.read_parquet('file.rot', engine='fastparquet')

错误栈指向fastparquet解析文件头时的seek操作:

OSError: [Errno 22] Invalid argument

排查与解决步骤

1. 验证文件格式与路径

  • 确认文件是标准Parquet格式:将文件重命名为.parquet后缀再尝试读取,避免后缀识别问题:
    file = pd.read_parquet('file.parquet', engine='fastparquet')
    
  • 检查文件路径是否包含特殊字符(如非ASCII字符、空格):Windows环境下这类字符可能导致文件IO异常,建议将文件移至路径更简单的目录(如C:\temp\file.rot)重新测试。

2. 修复依赖版本兼容性

  • 更新fastparquet和pandas到最新稳定版,解决版本匹配问题:
    conda update fastparquet pandas
    
  • 若更新后问题仍存在,尝试降级到已知稳定的版本组合:
    conda install fastparquet=2023.8.0 pandas=2.1.0
    

3. 切换Parquet引擎测试

  • 尝试使用pyarrow引擎读取,排除fastparquet自身的解析问题:
    # 先安装pyarrow(未安装时执行)
    # conda install pyarrow
    file = pd.read_parquet('file.rot', engine='pyarrow')
    
    若pyarrow能正常读取,说明问题出在fastparquet对该文件的处理逻辑上,可暂时用pyarrow替代,或向fastparquet项目提交问题反馈。

4. 检查文件完整性

  • 确认文件未损坏:若文件是通过传输/下载获取的,重新获取完整文件后再测试。也可开启fastparquet的验证参数检查文件完整性:
    file = pd.read_parquet('file.rot', engine='fastparquet', verify=True)
    

内容的提问来源于stack exchange,提问作者EsOj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 08:07:53