pandas.DataFrame.to_excel
-
DataFrame.to_excel(self, 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)[source] -
Запись объекта в лист Excel.
Для записи одного объекта в файл Excel .xlsx достаточно указать имя целевого файла. Для записи в несколько листов необходимо создать объект
ExcelWriterс именем целевого файла и указать лист в файле, в который нужно записать данные.Для записи в несколько листов необходимо указать уникальные
sheet_name. После записи всех данных в файл необходимо сохранить изменения. Обратите внимание, что создание объектаExcelWriterс именем файла, который уже существует, приведёт к стиранию содержимого существующего файла.Параметры: -
excel_writer : str or ExcelWriter object -
Путь к файлу или существующий объект ExcelWriter.
-
sheet_name : str, default ‘Sheet1’ -
Имя листа, который будет содержать DataFrame.
-
na_rep : str, default ‘’ -
Представление пропущенных данных.
-
float_format : str, optional -
Строковый формат для чисел с плавающей точкой. Например,
float_format="%.2f"отформатирует 0,1234 до 0,12. -
columns : sequence or list of str, optional -
Столбцы для записи.
-
header : bool or list of str, default True -
Записать имена столбцов. Если задан список строк, предполагается, что это псевдонимы имен столбцов.
-
index : bool, default True -
Записать имена строк (индекс).
-
index_label : str or sequence, optional -
Метка столбца для столбца(ов) индекса, если это необходимо. Если не указано, и
headerиindexравны True, то используются имена индексов. Должен быть задан последовательность, если DataFrame использует MultiIndex. -
startrow : int, default 0 -
Номер строки левого верхнего ячейки для вывода DataFrame.
-
startcol : int, default 0 -
Номер столбца левого верхнего ячейки для вывода DataFrame.
-
engine : str, optional -
Используемый движок записи, ‘openpyxl’ или ‘xlsxwriter’. Вы также можете задать его с помощью опций
io.excel.xlsx.writer,io.excel.xls.writer, иio.excel.xlsm.writer. -
merge_cells : bool, default True -
Запись MultiIndex и иерархических строк как объединённых ячеек.
-
encoding : str, optional -
Кодировка результирующего файла Excel. Необходимо только для xlwt, другие движки поддерживают Unicode по умолчанию.
-
inf_rep : str, default ‘inf’ -
Представление бесконечности (в Excel нет встроенного представления бесконечности).
-
verbose : bool, default True -
Отображать больше информации в логах ошибок.
-
freeze_panes : tuple of int (length 2), optional -
Определяет крайнюю нижнюю строку и крайний правый столбец, которые должны быть заморожены.
Новое в версии 0.20.0.
См. также
-
to_csv - Запись DataFrame в файл CSV (значения, разделённые запятыми).
-
ExcelWriter - Класс для записи объектов DataFrame в листы Excel.
-
read_excel - Чтение файла Excel в DataFrame pandas.
-
read_csv - Чтение файла CSV (значения, разделённые запятыми) в DataFrame.
Примечания
Для совместимости с
to_csv(), to_excel сериализует списки и словари в строки перед записью.После сохранения книги невозможно записать дополнительные данные без перезаписи всей книги.
Примеры
Создание, запись в и сохранение книги:
>>> df1 = pd.DataFrame([['a', 'b'], ['c', 'd']], ... index=['row 1', 'row 2'], ... columns=['col 1', 'col 2']) >>> df1.to_excel("output.xlsx") # doctest: +SKIPДля указания имени листа:
>>> df1.to_excel("output.xlsx", ... sheet_name='Sheet_name_1') # doctest: +SKIPЕсли требуется записать данные в несколько листов в книге, необходимо указать объект ExcelWriter:
>>> df2 = df1.copy() >>> with pd.ExcelWriter('output.xlsx') as writer: # doctest: +SKIP ... df1.to_excel(writer, sheet_name='Sheet_name_1') ... df2.to_excel(writer, sheet_name='Sheet_name_2')Для установки библиотеки, используемой для записи файла Excel, можно передать параметр
engine(движок по умолчанию выбирается автоматически в зависимости от расширения файла):>>> df1.to_excel('output1.xlsx', engine='xlsxwriter') # doctest: +SKIP -
© 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.25.0/reference/api/pandas.DataFrame.to_excel.html