pandas.DataFrame.to_excel#
- DataFrame.to_excel(excel_writer, *, sheet_name='Лист1', na_rep='', float_format=None, столбцы=None, header=True, index=True, index_label=None, startrow=0, startcol=0, движок=None, merge_cells=True, inf_rep='inf', freeze_panes=None, storage_options=None, engine_kwargs=None)[источник]#
Запись объекта на лист Excel.
Для записи одного объекта в файл Excel .xlsx достаточно указать имя целевого файла. Для записи на несколько листов необходимо создать ExcelWriter объект с именем целевого файла и указанием листа в файле для записи.
Несколько листов могут быть записаны путём указания уникальных sheet_name. После записи всех данных в файл необходимо сохранить изменения. Обратите внимание, что создание ExcelWriter объект с именем файла, который уже существует, приведёт к стиранию содержимого существующего файла.
- Параметры:
- excel_writerпуть, файлоподобный или объект ExcelWriter
Путь к файлу или существующий ExcelWriter.
- sheet_namestr, по умолчанию ‘Sheet1’
Имя листа, который будет содержать DataFrame.
- na_repstr, по умолчанию ‘’
Представление отсутствующих данных.
- float_formatstr, optional
Строка формата для чисел с плавающей точкой. Например
float_format="%.2f"отформатирует 0.1234 как 0.12.- столбцыпоследовательность или список строк, опционально
Столбцы для записи.
- headerbool или список строк, по умолчанию True
Записать названия столбцов. Если задан список строк, он считается псевдонимами для названий столбцов.
- indexbool, по умолчанию True
Записать имена строк (индекс).
- index_labelstr или sequence, опционально
Метка столбца для столбца(ов) индекса, если требуется. Если не указано, и header и index равны True, то используются имена индексов. Последовательность должна быть задана, если DataFrame использует MultiIndex.
- startrowint, по умолчанию 0
Верхняя левая ячейка строки для выгрузки фрейма данных.
- startcolint, по умолчанию 0
Верхняя левая ячейка столбца для выгрузки фрейма данных.
- движокstr, optional
Движок записи для использования, 'openpyxl' или 'xlsxwriter'. Вы также можете установить это через опции
io.excel.xlsx.writerилиio.excel.xlsm.writer.- merge_cellsbool, по умолчанию True
Записывать MultiIndex и иерархические строки как объединенные ячейки.
- inf_repstr, по умолчанию 'inf'
Представление бесконечности (в Excel нет нативного представления для бесконечности).
- freeze_panesкортеж из int (длина 2), опционально
Указывает самую нижнюю строку и самый правый столбец (начиная с 1), которые должны быть зафиксированы.
- storage_optionsdict, optional
Дополнительные параметры, которые имеют смысл для конкретного соединения с хранилищем, например, хост, порт, имя пользователя, пароль и т.д. Для HTTP(S) URL пары ключ-значение передаются в
urllib.request.Requestв качестве параметров заголовка. Для других URL-адресов (например, начинающихся с "s3://" и "gcs://") пары ключ-значение передаютсяfsspec.open. Пожалуйста, смотритеfsspecиurllibдля получения дополнительной информации, а для дополнительных примеров по опциям хранения см. здесь.Добавлено в версии 1.2.0.
- engine_kwargsdict, optional
Произвольные ключевые аргументы, передаваемые движку Excel.
Смотрите также
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: ... df1.to_excel(writer, sheet_name='Sheet_name_3')
Чтобы установить библиотеку, используемую для записи файла Excel, вы можете передать движок ключевое слово (движок по умолчанию автоматически выбирается в зависимости от расширения файла):
>>> df1.to_excel('output1.xlsx', engine='xlsxwriter')