Экспорт данных в файл Excel с помощью функции Pandas to_excel() в Python
Функция to_excel()
в Pandas используется для экспорта данных в файл Excel. Всего за несколько строк кода мы можем взять наш массив данных и экспортировать его в файл Excel. Нам нужно только указать имя файла, а всё остальное Pandas сделает за нас. Это всё равно что сказать компьютеру: "Эй, сохрани эту таблицу в файл Excel", и он сделает всю работу за кулисами. Эта функция очень полезна, когда мы хотим поделиться нашими данными или работать с другими программами, которые понимают файлы Excel.
Синтаксис функции Pandas to_excel()
Давайте начнем с понимания основных составляющих функции 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)
Некоторые важные параметры:
excel_writer
: Путь к файлу или объект ExcelWriter.sheet_name
: Имя листа в файле Excel.na_rep
: Строковое представление значений NaN.index
: Записывает имена строк (индекс).index_label
: Метка столбца для индексного столбца.header
: Записывает имена столбцов (заголовки).columns
: Колонки для написания.
Экспорт фрейма данных в файл Excel
Давайте создадим пример фрейма данных с помощью функции DataFrame()
библиотеки Pandas.
Образец дата-фрейма:
import pandas as pd
df = pd.DataFrame([['a','b','c'],['d','e','f']],
index=['row 1','row 2'],
columns=['col 1','col 2','col 3'])
df
Теперь давайте экспортируем этот дата-фрейм в файл Excel с помощью функции to_excel()
.
df.to_excel("out.xlsx")
В приведенном выше коде мы просто передали имя файла Excel out.xlsx, в который мы хотим экспортировать наш фрейм данных df
.
Выходные данные:
Мы видим, что наш фрейм данных df
был экспортирован в файл Excel out.xlsx.
Игнорирование индексного столбца в экспортированном файле
Теперь, если мы хотим выгрузить данные и не хотим, чтобы столбец index
был напечатан в Excel, нам нужно просто передать параметр index
как False
в методе to_excel()
, чтобы столбец индекса не был напечатан в файле Excel.
df.to_excel('out.xlsx', index=False)
Выходные данные:
В результате мы видим, что наш индексный столбец отсутствует в файле Excel.
Игнорирование заголовка в экспортируемом файле
Допустим, нам нужно экспортировать фрейм данных в файл Excel, но по условию нам не нужны имена столбцов или заголовки в файле, поэтому для этого нужно просто передать параметр header
как false
в функцию to_excel()
.
df.to_excel('out.xlsx', header=False)
Выходные данные:
Здесь мы видим, что имена столбцов и заголовки были удалены из файла Excel.
Экспорт определенных столбцов
Мы также можем экспортировать определенные столбцы из массива данных в файл Excel (не весь массив данных), просто указав конкретные столбцы, которые нам нужно экспортировать, в параметре под названием columns
.
df.to_excel('out.xlsx', columns=['col 1','col 3'])
Мы передали параметр columns
как ['col 1′,'col 3′]
, чтобы мы могли экспортировать в файл Excel только col 1
и col 3
, а не все столбцы из фрейма данных.
Выходные данные:
Экспорт в Excel с указанием имени листа
Мы также можем указать конкретное имя листа файла Excel, в который мы хотим экспортировать фрейм данных, просто указав любое имя листа в параметре sheet_name
.
df.to_excel('out.xlsx', sheet_name = "hello")
Мы передали sheet_name
как hello
, что означает, что дата-фрейм df
будет экспортирован в лист hello
файла Excel out.xlsx.
Выходные данные:
Заключение
В этом уроке мы рассмотрели функцию to_excel()
, предоставляемую библиотекой Python Pandas для экспорта фрейма данных в файл Excel. Мы также рассмотрели, как экспортировать данные из Pandas в файл Excel, игнорируя индекс и заголовок массива данных. При этом мы также экспортировали определенные столбцы дата-фрейма, а затем экспортировали дата-фрейм в Excel с определённым именем листа.
Есть удобный и гибкий способ импорта табличных данных для анализа и манипулирования ими в среде Python.
Благодарю за прочтение! Счастливого кодинга!