pandas.io.formats.style.Styler.to_excel#
- Styler.to_excel(excel_writer, sheet_name='Sheet1', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, startrow=0, startcol=0, engine=None, merge_cells=True, encoding=None, inf_rep='inf', verbose=True, freeze_panes=None, storage_options=None)[源代码]#
将 Styler 写入 Excel 工作表。
要将单个 Styler 写入 Excel .xlsx 文件,只需指定目标文件名即可。要写入多个工作表,需要创建一个带有目标文件名的 ExcelWriter 对象,并指定要写入的文件的哪个工作表。
可以通过指定唯一的 sheet_name 来写入多个工作表。在写入所有数据到文件后,必须保存更改。请注意,使用已存在的文件名创建 ExcelWriter 对象将导致现有文件内容被擦除。
- Parameters:
- excel_writerpath-like, file-like, or ExcelWriter object
文件路径或现有的 ExcelWriter 对象。
- sheet_namestr, default ‘Sheet1’
将包含 DataFrame 的工作表的名称。
- na_repstr, default ‘’
缺失数据表示。
- float_formatbool, default False
浮点数格式字符串。例如
float_format="%.2f"会将 0.1234 格式化为 0.12。- columnssequence or list of str, optional
要写入的列。
- headerbool or list of str, default True
写入列名。如果给定字符串列表,则假定它们是列名的别名。
- indexbool, default True
写入行名(索引)。
- index_labelstr 或序列,可选
如果需要,为索引列指定索引列的标签。如果未指定,并且 header 和 index 为 True,则使用索引名称。如果 DataFrame 使用 MultiIndex,则应给出序列。
- startrowint,默认为 0
要转储 DataFrame 的左上角单元格行。
- startcolint,默认为 0
要转储 DataFrame 的左上角单元格列。
- enginebool, default False
要使用的写入引擎,’openpyxl’ 或 ‘xlsxwriter’。您也可以通过选项
io.excel.xlsx.writer或io.excel.xlsm.writer进行设置。- merge_cellsbool, default True
将 MultiIndex 和分层行写入为合并单元格。
- inf_repstr, default ‘inf’
无穷大的表示(Excel 中没有原生的无穷大表示)。
- freeze_panestuple of int (length 2), optional
指定将被冻结的基于一的最后一行和最后一列。
- storage_optionsdict, 可选
适用于特定存储连接的额外选项,例如主机、端口、用户名、密码等。对于 HTTP(S) URL,键值对将作为标头选项转发给
urllib.request.Request。对于其他 URL(例如,以 “s3://”, 和 “gcs://” 开头的 URL),键值对将转发给fsspec.open。更多详情请参阅fsspec和urllib,有关存储选项的更多示例,请参阅 here 。在 1.5.0 版本加入.
- engine_kwargsdict, 可选
传递给 Excel 引擎的任意关键字参数。
参见
to_csv将 DataFrame 写入逗号分隔值 (csv) 文件。
ExcelWriter将 DataFrame 对象写入 Excel 工作表的类。
read_excel将 Excel 文件读入 pandas DataFrame。
read_csv将逗号分隔值 (csv) 文件读取到 DataFrame 中。
io.formats.style.Styler.to_excel向 Excel 工作表添加样式。
Notes
为了与
to_csv()兼容,to_excel 在写入前将列表和字典序列化为字符串。一旦工作簿被保存,就不可能在不重写整个工作簿的情况下进一步写入数据。
Examples
创建、写入和保存工作簿:
>>> df1 = pd.DataFrame([['a', 'b'], ['c', 'd']], ... index=['row 1', 'row 2'], ... columns=['col 1', 'col 2']) >>> df1.to_excel("output.xlsx")
要指定工作表名称:
>>> df1.to_excel("output.xlsx", ... sheet_name='Sheet_name_1')
如果您希望向工作簿中的多个工作表写入数据,则必须指定一个 ExcelWriter 对象:
>>> df2 = df1.copy() >>> with pd.ExcelWriter('output.xlsx') as writer: ... df1.to_excel(writer, sheet_name='Sheet_name_1') ... df2.to_excel(writer, sheet_name='Sheet_name_2')
ExcelWriter 也可以用于追加到现有的 Excel 文件:
>>> with pd.ExcelWriter('output.xlsx', ... mode='a') as writer: ... df1.to_excel(writer, sheet_name='Sheet_name_3')
要设置用于写入 Excel 文件的库,您可以传递 engine 关键字(默认引擎会根据文件扩展名自动选择):
>>> df1.to_excel('output1.xlsx', engine='xlsxwriter')