pandas.ExcelWriter

class pandas.ExcelWriter(path, engine=None, date_format=None, datetime_format=None, mode='w', **engine_kwargs) [source]

Class for writing DataFrame objects into excel sheets, default is to use xlwt for xls, openpyxl for xlsx. See DataFrame.to_excel for typical usage.

Parameters:
path : string

Path to xls or xlsx file.

engine : string (optional)

Engine to use for writing. If None, defaults to io.excel.<extension>.writer. NOTE: can only be passed as a keyword argument.

date_format : string, default None

Format string for dates written into Excel files (e.g. ‘YYYY-MM-DD’)

datetime_format : string, default None

Format string for datetime objects written into Excel files (e.g. ‘YYYY-MM-DD HH:MM:SS’)

mode : {‘w’ or ‘a’}, default ‘w’

File mode to use (write or append).

.. versionadded:: 0.24.0

Notes

None of the methods and properties are considered public.

For compatibility with CSV writers, ExcelWriter serializes lists and dicts to strings before writing.

Examples

Default usage:

>>> with ExcelWriter('path_to_file.xlsx') as writer:
...     df.to_excel(writer)

To write to separate sheets in a single file:

>>> with ExcelWriter('path_to_file.xlsx') as writer:
...     df1.to_excel(writer, sheet_name='Sheet1')
...     df2.to_excel(writer, sheet_name='Sheet2')

You can set the date format or datetime format:

>>> with ExcelWriter('path_to_file.xlsx',
                      date_format='YYYY-MM-DD',
                      datetime_format='YYYY-MM-DD HH:MM:SS') as writer:
...     df.to_excel(writer)

You can also append to an existing Excel file:

>>> with ExcelWriter('path_to_file.xlsx', mode='a') as writer:
...     df.to_excel(writer, sheet_name='Sheet3')

Attributes

None

Methods

None

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.24.2/reference/api/pandas.ExcelWriter.html