Как записать кадр данных pandas в файлы Excel

Обновлено: 07.07.2024

В этом руководстве мы покажем, как экспортировать кадр данных pandas в файл Excel двумя разными способами. Первый способ — экспортировать кадр данных pandas в файл excel, вызвав функцию to_excel() с именем файла. Другой метод, обсуждаемый в этой статье, — это метод ExcelWriter(). Этот метод записывает объекты на лист Excel, а затем экспортирует их в файл Excel с помощью функции to_excel.

В этом руководстве мы также обсудим, как добавить несколько фреймов данных Pandas в несколько листов Excel с помощью метода ExcelWriter(). Кроме того, мы выполнили несколько примеров в нашей системе, чтобы подробно объяснить каждый метод.

Экспорт кадра данных Pandas в файл Excel с помощью функции to_excel()

Когда мы экспортируем кадр данных pandas на лист Excel с помощью функции dataframe.to_excel(), он записывает объект непосредственно в лист Excel. Чтобы реализовать этот метод, создайте кадр данных, а затем укажите имя файла Excel. Теперь, используя функцию dataframe.to_excel(), экспортируйте кадр данных pandas в файл Excel.

В следующем примере мы создали фрейм данных с именем sales_record, содержащий столбцы Products_ID , Product_Names , Product_Prices , Product_Sales . После этого мы указали имя для excel-файла ProductSales_sheet.xlsx. Мы использовали метод sales_record.to_excel(), чтобы сохранить все данные на листе Excel.

См. приведенный ниже пример кода:

После выполнения вышеуказанного исходного кода файл Excel ProductSales_sheet.xlsx будет сохранен в папке текущего запущенного проекта.

Экспорт кадра данных Pandas с помощью метода ExcelWriter()

Метод Excelwrite() также полезен для экспорта фрейма данных pandas в файл Excel. Сначала мы используем метод Excewriter() для записи объекта на лист Excel, а затем с помощью функции dataframe.to_excel() мы можем экспортировать кадр данных в файл Excel.

См. пример кода ниже.

Экспорт нескольких фреймов данных Pandas в несколько листов Excel

В приведенных выше методах мы экспортировали один фрейм данных pandas в таблицу Excel. Но, используя этот метод, мы можем экспортировать несколько фреймов данных pandas в несколько листов Excel.

См. следующий пример, в котором мы экспортировали несколько фреймов данных по отдельности в несколько листов Excel:

Статьи DelftStack написаны такими же фанатами программного обеспечения, как и вы. Если вы также хотите внести свой вклад в DelftStack, написав платные статьи, вы можете посетить страницу «Написать для нас».

Статья по теме — Pandas DataFrame


сообщить об этом объявлении

Вы можете сохранить или записать DataFrame в файл Excel или определенный лист в файле Excel, используя метод pandas.DataFrame.to_excel() класса DataFrame.

В этом руководстве мы узнаем, как записать кадр данных Pandas в файл Excel с помощью хорошо подробных примеров программ Python.

Необходимое условие

Необходимым условием для работы с файловыми функциями Excel в pandas является установка модуля openpyxl. Чтобы установить openpyxl с помощью pip, выполните следующую команду pip.

Пример 1. Запись DataFrame в файл Excel

Вы можете записать файл DataFrame в файл Excel без указания имени листа. Пошаговый процесс приведен ниже:

  1. Подготовьте свой DataFrame. В этом примере мы будем инициализировать DataFrame с некоторыми строками и столбцами.
  2. Создайте модуль записи Excel с именем выходного файла Excel, в который вы хотите записать наш DataFrame.
  3. Вызовите функцию to_excel() в DataFrame с помощью средства записи Excel, переданного в качестве аргумента.
  4. Сохраните файл Excel, используя метод save() программы Excel Writer.

Программа Python

Вывод

Запустите приведенную выше программу, и файл Excel будет создан с именем, указанным при создании средства записи Excel.

Pandas — запись DataFrame в лист Excel

Выходной файл Excel

Откройте файл Excel, и вы увидите индекс, метки столбцов и данные строк, записанные в файл.

Pandas — запись фрейма данных в лист Excel

Пример 2. Запись DataFrame на определенный лист Excel

Вы можете записать DataFrame на определенный лист Excel. Пошаговый процесс:

  1. Подготовьте свой DataFrame.
  2. Создайте средство записи Excel с именем желаемого выходного файла Excel.
  3. Вызовите функцию to_excel() в DataFrame, указав средство записи и имя листа Excel, переданные в качестве аргументов.
  4. Сохраните файл Excel, используя метод save() программы Excel Writer.

Программа Python

Запустить программу


Выходной файл Excel

Откройте файл Excel. Обратите внимание на название листа Excel. Он назван в соответствии со строкой, которую мы указали в качестве второго аргумента функции to_excel().


Обзор

В этом учебном пособии по Pandas мы узнали, как написать лист данных Pandas DataFrame в Excel с помощью хорошо подробных примеров программ Python.

Напишите Excel с помощью Python Pandas. Вы можете записать любые данные (списки, строки, числа и т. д.) в Excel, сначала преобразовав их в фрейм данных Pandas, а затем записав фрейм данных в Excel.

Чтобы экспортировать кадр данных Pandas в виде файла Excel (расширение: .xlsx, .xls), используйте метод to_excel().

установитьxlwt, openpyxl

to_excel() использует внутреннюю библиотеку xlwt и openpyxl.

  • xlwt используется для записи файлов .xls (форматы до Excel2003)
  • openpyxl используется для записи .xlsx (Excel2007 или более поздних форматов).

Оба могут быть установлены с помощью pip. (pip3 в зависимости от среды)

Написать Excel

Запись DataFrame в файл Excel

Импорт openpyxl требуется, если вы хотите добавить его в существующий файл Excel, описанный в конце.
Фрейм данных определяется ниже:

Вы можете указать путь в качестве первого аргумента метода to_excel() .

Примечание. данные в исходном файле удаляются при перезаписи.

Аргумент new_sheet_name — это имя листа. Если его не указать, он будет называться Sheet1 .

 Пишите на Python в Excel

Если вам не нужно писать index (имя строки), columns (имя столбца), аргумент index, columns имеет значение False.

Запись нескольких фреймов данных в файлы Excel

Объект ExcelWriter позволяет использовать несколько панд. Объекты DataFrame можно экспортировать на отдельные листы.

Например, панды. Подготовьте другой объект DataFrame.

Затем используйте функцию ExcelWriter() следующим образом:

Вам не нужно вызывать Writer.save(), Writer.close() внутри блоков.

Добавить в существующий файл Excel

Вы можете добавить кадр данных в существующий файл Excel. Приведенный ниже код открывает существующий файл, а затем добавляет два листа с данными фреймов данных.

Примечание. Поскольку он обрабатывается с использованием openpyxl, включаются только файлы .xlsx.

Вы можете экспортировать Pandas DataFrame в файл Excel, используя to_excel.

Вот шаблон, который вы можете применить в Python для экспорта вашего DataFrame:

И если вы хотите экспортировать свой DataFrame в определенный лист Excel, вы можете использовать этот шаблон:

Примечание: вам придется установить openpyxl, если вы получите следующую ошибку:

ModuleNotFoundError: нет модуля с именем «openpyxl»

Затем вы можете использовать PIP для установки openpyxl следующим образом:

  • DataFrame будет создан с нуля
  • Затем DataFrame будет экспортирован в файл Excel.

Пример использования для экспорта Pandas DataFrame в файл Excel

Допустим, у вас есть следующий набор данных о товарах и их ценах:

Продукт Цена
Настольный компьютер 1200
Принтер 150
Планшет 300
Монитор 450

Конечная цель — экспортировать этот набор данных в Excel.

Но прежде чем экспортировать эти данные, вам необходимо создать DataFrame, чтобы зафиксировать эту информацию в Python.

Затем вы можете использовать следующий синтаксис для создания DataFrame:

Вот как будет выглядеть DataFrame:

Далее вам нужно указать путь, по которому вы хотите сохранить экспортированный файл Excel.

Например, указанный ниже путь будет использоваться для хранения экспортированного файла Excel (обратите внимание, что вам потребуется изменить путь, чтобы он отражал расположение файла Excel на вашем компьютере). ):

r ‘C:\Users\Ron\Desktop\ export_dataframe .xlsx’

Обратите внимание, что по отношению к этому пути выделены 3 компонента:

  • Желтым цветом перед путем помещается символ 'r', чтобы избежать этой ошибки юникода: SyntaxError: (ошибка юникода) кодек 'unicodeescape' не может декодировать байты в позиции 2–3: усечено \UXXXXXXXX escape
  • Синим цветом указано имя создаваемого файла. Вы можете ввести другое имя файла в зависимости от ваших потребностей.
  • Зеленым цветом указан тип файла. Поскольку мы имеем дело с файлом Excel, для последней версии Excel используется тип файла «.xlsx».

Собирая все вместе, вот полный код Python для экспорта Pandas DataFrame в файл Excel:

Наконец, запустите приведенный выше код на Python (с учетом вашего пути), и вы заметите, что новый файл Excel (названный export_dataframe) будет создан в указанном вами месте.< /p>

Обратите внимание: если вы хотите включить индекс, просто удалите «, index = False» из своего кода.

Дополнительные ресурсы

Вы только что видели, как экспортировать Pandas DataFrame в файл Excel. Иногда вам может понадобиться экспортировать Pandas DataFrame в файл CSV. В таких случаях концепция будет очень похожей.

Читайте также: