Pandas库read_excel()参数详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pandas库read_excel()参数详解相关的知识,希望对你有一定的参考价值。

参考技术A io :字符串,文件的路径对象。

sheet_name :None、string、int、字符串列表或整数列表,默认为0。字符串用于工作表名称,整数用于零索引工作表位置,字符串列表或整数列表用于请求多个工作表,为None时获取所有工作表。

header :指定作为列名的行,默认0,即取第一行的值为列名。数据为列名行以下的数据;若数据不含列名,则设定 header = None。

names :默认为None,要使用的列名列表,如不包含标题行,应显示传递 header=None 。

index_col :指定列为索引列,默认None列(0索引)用作DataFrame的行标签。

usecols :int或list,默认为None。

squeeze :boolean,默认为False,如果解析的数据只包含一列,则返回一个Series。

dtype :列的类型名称或字典,默认为None。数据或列的数据类型。例如'a':np.float64,'b':np.int32使用对象保存存储在Excel中的数据而不解释dtype。如果指定了转换器,则它们将应用于dtype转换的INSTEAD。

skiprows :省略指定行数的数据,从第一行开始。

skipfooter :省略指定行数的数据,从尾部数的行开始。

dtype :字典类型'列名1':数据类型,‘列名’:数据类型,设定指定列的数据类型。

通过 pandas.read_excel 在标题后跳过行范围

【中文标题】通过 pandas.read_excel 在标题后跳过行范围【英文标题】:Skipping range of rows after header through pandas.read_excel 【发布时间】:2018-09-22 20:56:54 【问题描述】:

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

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

【问题讨论】:

【参考方案1】:

根据documentation 的pandas.read_excelskiprows 必须类似于列表。

试试这个来排除第 1 到 336 行(含):

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

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

【讨论】:

+1 表示它类似于列表,解决了我阅读标题但跳过第一行之后的问题(pd.read_excel(path, skiprows=[1])

以上是关于Pandas库read_excel()参数详解的主要内容,如果未能解决你的问题,请参考以下文章

一个参数一个xlsx表,让你玩转Pandas中read_excel()表格读取!

Pandas操作excel

编码参数是不是适用于 pandas.read_excel?

pandas.read_excel 参数“sheet_name”不起作用

pandas中pd.read_excel()方法中的converters参数

pandas.read_excel参数“sheet_name”无法正常工作,,将sheet_name改写成sheetname