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

为何Polars的pl.read_excel()读取大文件时会出现不明错误?

Polars读取大体积Excel/CSV文件报错的解决方案

Polars运算速度快、语法简洁,但读取行数较多的Excel/CSV文件时,常出现读取错误,典型错误信息为remaining bytes non-empty。可尝试以下解决办法:

  • 增大infer_schema_length参数(例如设置为infer_schema_length=10000)
  • 通过dtypes参数手动指定各列的正确数据类型
  • 将ignore_errors参数设置为True

读取大文件时,需通过read_options参数对Polars进行配置,示例代码如下:

df = pl.read_excel(file, sheet_name=sheet,
     read_options={"infer_schema_length": None})

经测试,该配置可成功读取包含23000行数据的文件。

根据Polars官方文档说明:

infer_schema_length:接受整数或None值,用于限定推断数据结构(schema)时扫描的最大行数。若设为None,可能会扫描全部数据(此操作速度较慢)。该参数仅对行序列或生成器类型的输入生效,其他类型输入将按原样读取。

针对read_excel方法,设置{"infer_schema_length": None}时,Polars会执行两次读取操作:第一次扫描全量数据以推断正确的输出类型,第二次则基于这些类型读取完整数据。

内容的提问来源于stack exchange,提问作者okayama-taro

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 06:11:03