如何在pd.read_excel()中设置指定表头并跳过指定行读取数据?
问题描述

这是我的示例外部Excel文件。我希望将第3行设置为表头(列名),并从第5行开始读取数据。
我尝试使用以下代码,但未能正确读取数据:
pd.read_excel(file.xlsx, header = [2], skiprows=3)
请问是否无法同时实现这两个操作?
解决方案
你的代码问题出在参数冲突:skiprows=3会直接跳过前3行(Python索引0、1、2),而你指定的表头正好是索引2的行(Excel第3行),这就把表头也跳过了,自然读不到正确的数据。
要同时实现「第3行做表头、从第5行读数据」,可以这么写:
pd.read_excel("file.xlsx", header=2, skiprows=[3])
header=2:指定Python索引2的行(对应Excel第3行)作为列名skiprows=[3]:单独跳过索引3的行(对应Excel第4行),这样就从索引4的行(Excel第5行)开始读取数据
也可以用skiprows=range(3,4)替代skiprows=[3],效果完全一致。
内容的提问来源于stack exchange,提问作者user3685918
相关产品推荐
相关产品推荐

