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

如何用pandas.read_excel保留首行并跳过指定行范围?

解决pandas.read_excel跳过指定行范围的问题

我明白你遇到的困扰了——你想保留Excel文件的第1行(索引0),跳过中间第2到337行(对应索引1至336),然后读取剩余所有行,但之前用skiprows的尝试没达到预期。

问题出在对skiprows参数的使用逻辑上:当你传入整数时,它会跳过前N行,而非指定索引范围;如果传入列表,需要明确列出所有要跳过的行索引。这里有两种简单有效的解决方法:

方法1:用range()生成要跳过的行索引

直接生成从1到336的索引序列,传给skiprows即可精准跳过目标行:

import pandas as pd

# 保留索引0,跳过1-336,读取剩余行
df = pd.read_excel("你的文件路径.xlsx", skiprows=range(1, 337))

range(1, 337)会生成1,2,...,336的整数序列,正好对应你要跳过的行索引,这样pandas会自动保留索引0和从337开始的所有行。

方法2:用lambda函数灵活过滤行

如果需要更自定义的过滤逻辑,可以用lambda函数判断是否跳过某一行:

df = pd.read_excel("你的文件路径.xlsx", skiprows=lambda x: 1 <= x <= 336)

这个lambda函数会在索引处于1到336之间时返回True,触发pandas跳过该行,效果和方法1完全一致。

验证结果

读取完成后,你可以通过df.shape[0]查看行数,结果应该是1161 - 336 = 825行(保留了索引0的1行,加上337到1160的824行),完全符合你的需求。

之前你可能误传了整数给skiprows(比如skiprows=336),这会让pandas跳过前336行(包括你想保留的索引0),所以才会出现读取全部行的问题。现在用上面的方法就能精准控制行的保留与跳过了。

内容的提问来源于stack exchange,提问作者florence-y

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:51:14