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=True
的to_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 或 列 -> 格式的字典, 默认
None
str 或 列 -> 格式 的字典, 默认 如果在使用
parse_dates
的同时使用,将根据此格式解析日期。对于更复杂的情况,请以object
形式读入,然后根据需要应用to_datetime()
。- thousandsstr, 默认为 None
用于将字符串列解析为数字的千位分隔符。请注意,此参数仅对在Excel中存储为文本的列是必要的,任何数字列将自动解析,无论显示格式如何。
- 评论str, 默认为 None
注释掉该行的剩余部分。传递一个或多个字符给这个参数,以指示输入文件中的注释。注释字符串和当前行末尾之间的任何数据都将被忽略。
- skipfooterint, 默认 0
要跳过的行(0索引)。
- dtype_backend{{‘numpy_nullable’, ‘pyarrow’}}
应用于结果
DataFrame
的后端数据类型(仍在实验中)。如果未指定,默认行为是不使用可为空的数据类型。如果指定,行为如下:"numpy_nullable"
: 返回支持可空数据类型的DataFrame
"pyarrow"
: 返回支持 pyarrow 的可空ArrowDtype
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()