Table Of Contents


Enter search terms or a module, class or function name.


Series.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)[source]
Write Series to an excel sheet

New in version 0.20.0.


excel_writer : string or ExcelWriter object

File path or existing ExcelWriter

: string, default ‘Sheet1’

Name of sheet which will contain DataFrame

: string, default ‘’

Missing data representation

: string, default None

Format string for floating point numbers

: sequence, optional

Columns to write

: boolean or list of string, default True

Write out column names. If a list of string is given it is assumed to be aliases for the column names

: boolean, default True

Write row names (index)

: string or sequence, default None

Column label for index column(s) if desired. If None is given, and header and index are True, then the index names are used. A sequence should be given if the DataFrame uses MultiIndex.

startrow :

upper left cell row to dump data frame

startcol :

upper left cell column to dump data frame

: string, default None

write engine to use - you can also set this via the options io.excel.xlsx.writer, io.excel.xls.writer, and io.excel.xlsm.writer.

: boolean, default True

Write MultiIndex and Hierarchical Rows as merged cells.

encoding: string, default None

encoding of the resulting excel file. Only necessary for xlwt, other writers support unicode natively.

: string, default ‘inf’

Representation for infinity (there is no native representation for infinity in Excel)

: tuple of integer (length 2), default None

Specifies the one-based bottommost row and rightmost column that is to be frozen

New in version 0.20.0.


If passing an existing ExcelWriter object, then the sheet will be added to the existing workbook. This can be used to save different DataFrames to one workbook:

>>> writer = pd.ExcelWriter('output.xlsx')
>>> df1.to_excel(writer,'Sheet1')
>>> df2.to_excel(writer,'Sheet2')

For compatibility with to_csv, to_excel serializes lists and dicts to strings before writing.

Scroll To Top