pandas.DataFrame.to_excel
- DataFrame.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=_NoDefault.no_default, inf_rep='inf', verbose=_NoDefault.no_default, freeze_panes=None, storage_options=None)[source]
-
Запись объекта в лист Excel.
Для записи одного объекта в файл Excel .xlsx достаточно указать имя целевого файла. Для записи в несколько листов необходимо создать объект ExcelWriter с именем целевого файла и указать лист в файле для записи.
Для записи в несколько листов необходимо указать уникальные sheet_name. После записи всех данных в файл необходимо сохранить изменения. Обратите внимание, что создание объекта ExcelWriter с именем файла, который уже существует, приведёт к стиранию содержимого существующего файла.
- Параметры
-
- excel_writer:путь, файлоподобный объект или объект ExcelWriter
-
Путь к файлу или существующий ExcelWriter.
- sheet_name:строка, по умолчанию ‘Sheet1’
-
Имя листа, который будет содержать DataFrame.
- na_rep:строка, по умолчанию ‘’
-
Представление пропущенных данных.
- float_format:строка, необязательно
-
Строка форматирования чисел с плавающей точкой. Например
float_format="%.2f"отформатирует 0.1234 до 0.12. - columns:последовательность или список строк, необязательно
-
Столбцы для записи.
- header:булево значение или список строк, по умолчанию True
-
Записать имена столбцов. Если задан список строк, предполагается, что это псевдонимы для имён столбцов.
- index:булево значение, по умолчанию True
-
Записать имена строк (индекс).
- index_label:строка или последовательность, необязательно
-
Имя столбца для столбца индекса, если нужно. Если не указано, и header и index равны True, используются имена индекса. Последовательность должна быть задана, если DataFrame использует MultiIndex.
- startrow:целое число, по умолчанию 0
-
Номер строки левого верхнего ячейки для выгрузки DataFrame.
- startcol:целое число, по умолчанию 0
-
Номер столбца левой верхней ячейки для выгрузки DataFrame.
- engine:строка, необязательно
-
Двигатель записи, ‘openpyxl’ или ‘xlsxwriter’. Вы также можете установить его с помощью параметров
io.excel.xlsx.writer,io.excel.xls.writer, иio.excel.xlsm.writer.Устарело начиная с версии 1.2.0: Так как пакет xlwt больше не поддерживается, двигатель
xlwtбудет удален в будущей версии pandas. - merge_cells:булево значение, по умолчанию True
-
Записать MultiIndex и Иерархические строки как объединённые ячейки.
- encoding:строка, необязательно
-
Кодировка результирующего файла excel. Необходимо только для xlwt, другие движки поддерживают Unicode напрямую.
Устарело начиная с версии 1.5.0: Этот ключевой параметр не использовался.
- inf_rep:строка, по умолчанию ‘inf’
-
Представление бесконечности (в Excel нет собственного представления бесконечности).
- verbose:булево значение, по умолчанию True
-
Отображать больше информации в журналах ошибок.
Устарело начиная с версии 1.5.0: Этот ключевой параметр не использовался.
- freeze_panes:кортеж из целых чисел (длины 2), необязательно
-
Указывает самую нижнюю строку и самый правый столбец, которые должны быть заморожены.
- storage_options:словарь, необязательно
-
Дополнительные параметры, имеющие смысл для определённого подключения к хранилищу, например, хост, порт, имя пользователя, пароль и т.д. Для HTTP(S) URL ключи-значения передаются в
urllib.request.Requestкак параметры заголовков. Для других URL (например, начинающихся с “s3://”, и “gcs://”) ключи-значения передаются вfsspec.open. Подробнее см.fsspecиurllib, и примеры параметров хранилища см. здесь.Введено в версии 1.2.0.
См. также
to_csv-
Запись DataFrame в файл с разделителями запятыми (csv).
ExcelWriter-
Класс для записи объектов DataFrame в листы Excel.
read_excel-
Чтение файла Excel в DataFrame pandas.
read_csv-
Чтение файла с разделителями запятыми (csv) в DataFrame.
io.formats.style.Styler.to_excel-
Добавление стилей в лист Excel.
Примечания
Для совместимости с
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")Для указания имени листа:
>>> 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: ... df.to_excel(writer, sheet_name='Sheet_name_3')Для установки библиотеки, которая используется для записи файла Excel, вы можете передать ключевое слово engine (движок по умолчанию автоматически выбирается в зависимости от расширения файла):
>>> df1.to_excel('output1.xlsx', engine='xlsxwriter')
© 2008–2022, 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/1.5.0/reference/api/pandas.DataFrame.to_excel.html