通过pandas跳过标题后的行范围。read-ex

2024-04-26 10:41:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道pandas.read_excel()中的参数usecols允许您选择特定列。

假设我用pandas.read_excel()读取了一个Excel文件。我的excel电子表格有1161行。我想保留第一行(索引为0),跳过第2行:337。似乎参数skiprows仅在涉及0索引时才起作用。我不知道我是否可能错了,但是我的代码中的几次运行总是产生一个读取1161行的输出,而不是只在第337行之后。例如:

documentationscore_dataframe = pd.read_excel("Documentation Score Card_17DEC2015 Rev 2 17JAN2017.xlsx",
                                        sheet_name = "Sheet1",
                                        skiprows = "336",
                                        usecols = "H:BD")

这是我所做的另一次尝试。

documentationscore_dataframe = pd.read_excel("Documentation Score Card_17DEC2015 Rev 2 17JAN2017.xlsx",
                                        sheet_name = "Sheet1",
                                        skiprows = "1:336",
                                        usecols = "H:BD")

我希望数据框在原始Excel导入中排除第2行到第337行。


Tags: dataframepandasread参数documentationrevcardxlsx
2条回答

根据pandas.read_exceldocumentationskiprows必须是列表式的。

请改为排除第1行到第336行(包括第1行和第336行):

df = pd.read_excel("file.xlsx",
                   sheet_name = "Sheet1",
                   skiprows = range(1, 337),
                   usecols = "H:BD")

注意:range构造函数被认为是类似于list的,因此不需要显式的列表转换。

试试这个

rows_to_skip = list(range(1, 337)) #list of rows you want to skip
documentationscore_dataframe = pd.read_excel("Documentation Score Card_17DEC2015 Rev 2 17JAN2017.xlsx",
                                    sheet_name = "Sheet1",
                                    skiprows = rows_to_skip,
                                    usecols = "H:BD")

相关问题 更多 >