通过pandas.read_excel

时间:2018-04-12 15:57:22

标签: python pandas dataframe

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

说我用pandas.read_excel()读了一个Excel文件。我的Excel电子表格有1161行。我想保留第一行(索引为0),并跳过第2行:337行。似乎参数skiprows仅在涉及0索引时起作用。我不知道自己是否错了,但是我的代码的几次运行总是产生一个输出 all 我的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行。

2 个答案:

答案 0 :(得分:1)

根据pandas.read_excel的{​​{3}},skiprows必须与列表类似。

请尝试将此行排除在第1行至第336行之外:

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

注意range构造函数被视为list - 就像此目的一样,因此不需要显式列表转换。

答案 1 :(得分:0)

试试这个

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")