pandas.ExcelFile.parse#

ExcelFile.parse(sheet_name=0, header=0, names=None, index_col=None, usecols=None, converters=None, true_values=None, false_values=None, skiprows=None, nrows=None, na_values=None, parse_dates=False, date_format=None, thousands=None, comment=None, skipfooter=0, dtype_backend=<no_default>, **kwds)[源代码][源代码]#

将指定的表格解析为 DataFrame。

等同于 read_excel(ExcelFile, …) 有关接受的参数的更多信息,请参阅 read_excel 的文档字符串。

参数:
sheet_namestr, int, list, 或 None, 默认 0

字符串用于工作表名称。整数用于零索引的工作表位置(图表工作表不计为工作表位置)。字符串/整数的列表用于请求多个工作表。指定 None 以获取所有工作表。

标题int, 整数列表, 默认 0

用于解析的 DataFrame 的列标签的行(从 0 开始索引)。如果传递了一个整数列表,这些行位置将组合成一个 MultiIndex。如果没有标题,请使用 None。

名称类数组, 默认 None

要使用的列名列表。如果文件不包含标题行,则应显式传递 header=None。

index_colint, str, 整数列表, 默认 None

列(从0开始索引)用作DataFrame的行标签。如果没有这样的列,则传递None。如果传递一个列表,这些列将组合成一个``MultiIndex``。如果使用``usecols``选择数据子集,index_col基于该子集。

缺失值将被向前填充,以允许与 merged_cells=Trueto_excel 进行往返操作。为了避免向前填充缺失值,请在读取数据后使用 set_index 而不是 index_col

usecolsstr, 类似列表的, 或可调用的, 默认 None
  • 如果为 None,则解析所有列。

  • 如果是字符串,则表示以逗号分隔的 Excel 列字母和列范围列表(例如 “A:E” 或 “A,C,E:F”)。范围的两边都包含在内。

  • 如果是整数列表,则表示要解析的列号列表(从0开始索引)。

  • 如果是字符串列表,则表示要解析的列名列表。

  • 如果是可调用的,那么针对每个列名对其进行评估,如果可调用对象返回 True,则解析该列。

根据上述行为返回列的子集。

转换器字典, 默认为 None

用于转换某些列中值的函数字典。键可以是整数或列标签,值是接受一个输入参数(Excel 单元格内容)并返回转换后内容的函数。

true_values列表,默认为无

视为 True 的值。

false_values列表,默认为无

视为 False 的值。

skiprows列表式、整数或可调用对象,可选

文件开头要跳过的行号(从0开始索引)或要跳过的行数(整数)。如果是可调用的,可调用函数将针对行索引进行评估,如果该行应被跳过则返回True,否则返回False。一个有效的可调用参数示例是 lambda x: x in [0, 2]

nrowsint, 默认为 None

要解析的行数。

na_values标量, 字符串, 类似列表的, 或字典, 默认无

额外的字符串识别为 NA/NaN。如果传递的是字典,则为每列指定 NA 值。

parse_dates布尔值、类列表或字典,默认值为 False

行为如下:

  • bool。如果为真 -> 尝试解析索引。

  • list 的整数或名称。例如,如果 [1, 2, 3] -> 尝试将第1、2、3列分别解析为单独的日期列。

  • list 的列表。例如,如果 [[1, 3]] -> 合并列 1 和 3 并解析为单个日期列。

  • dict,例如 {{‘foo’ : [1, 3]}} -> 将第1、3列解析为日期并称结果为 ‘foo’

如果列或索引包含一个无法解析的日期,整个列或索引将以对象数据类型原样返回。如果你不想将某些单元格解析为日期,只需在Excel中将它们的类型更改为“文本”。对于非标准日期时间解析,请在 pd.read_excel 之后使用 pd.to_datetime

注意:对于 iso8601 格式的日期,存在一个快速路径。

date_format : str 或 列 -> 格式的字典, 默认 Nonestr 或 列 -> 格式 的字典, 默认

如果在使用 parse_dates 的同时使用,将根据此格式解析日期。对于更复杂的情况,请以 object 形式读入,然后根据需要应用 to_datetime()

thousandsstr, 默认为 None

用于将字符串列解析为数字的千位分隔符。请注意,此参数仅对在Excel中存储为文本的列是必要的,任何数字列将自动解析,无论显示格式如何。

评论str, 默认为 None

注释掉该行的剩余部分。传递一个或多个字符给这个参数,以指示输入文件中的注释。注释字符串和当前行末尾之间的任何数据都将被忽略。

skipfooterint, 默认 0

要跳过的行(0索引)。

dtype_backend{{‘numpy_nullable’, ‘pyarrow’}}

应用于结果 DataFrame 的后端数据类型(仍在实验中)。如果未指定,默认行为是不使用可为空的数据类型。如果指定,行为如下:

Added in version 2.0.

**kwdsdict, 可选

传递给 excel 引擎的任意关键字参数。

返回:
DataFrame 或 DataFrames 的字典

从传入的 Excel 文件生成的 DataFrame。

参见

read_excel

将 Excel 表格值 (xlsx) 文件读取到 DataFrame 中。

read_csv

将逗号分隔值(csv)文件读取到 DataFrame 中。

read_fwf

将固定宽度格式化的行读取到 DataFrame 中。

例子

>>> df = pd.DataFrame([[1, 2, 3], [4, 5, 6]], columns=["A", "B", "C"])
>>> df.to_excel("myfile.xlsx")  
>>> file = pd.ExcelFile("myfile.xlsx")  
>>> file.parse()