🔗 Как объединить два excel файла в один с помощью Python 🐍

Используйте библиотеку pandas, чтобы объединить два excel файла в один при помощи Python.


import pandas as pd

# Загрузка данных из двух файлов
df1 = pd.read_excel("file1.xlsx")
df2 = pd.read_excel("file2.xlsx")

# Объединение данных
df_merged = pd.concat([df1, df2])

# Сохранение объединенных данных в новый файл
df_merged.to_excel("merged_file.xlsx", index=False)
    

Детальный ответ

Как объединить два excel файла в один с помощью Python

Объединение двух excel файлов в один может быть полезной задачей во многих ситуациях. Независимо от того, нужно ли вам сравнить данные из двух файлов или просто объединить их для анализа, Python предлагает набор инструментов, с помощью которых это можно сделать. В этой статье мы рассмотрим несколько подходов к объединению excel файлов в один с использованием Python.

1. Использование библиотеки pandas

Библиотека pandas в Python предоставляет мощные средства для работы с данными. Она также предлагает удобные способы объединения excel файлов в один.


import pandas as pd

# Загрузка данных из первого excel файла
df1 = pd.read_excel('файл1.xlsx')

# Загрузка данных из второго excel файла
df2 = pd.read_excel('файл2.xlsx')

# Объединение двух dataframe'ов
combined_df = pd.concat([df1, df2])

# Сохранение объединенного dataframe в excel файл
combined_df.to_excel('объединенный_файл.xlsx', index=False)

Приведенный выше код использует функции `read_excel()` для загрузки данных из каждого excel файла в отдельные объекты `df1` и `df2`. Затем функция `concat()` объединяет два dataframe'а в один `combined_df`, а функция `to_excel()` сохраняет объединенный dataframe в новый excel файл с именем "объединенный_файл.xlsx".

2. Использование библиотеки openpyxl

Библиотека openpyxl предоставляет возможность манипулировать excel файлами непосредственно. Это означает, что вы можете открывать и редактировать существующие файлы, а также создавать новые.


from openpyxl import load_workbook

# Загрузка данных из первого excel файла
wb1 = load_workbook('файл1.xlsx')
sheet1 = wb1.active

# Загрузка данных из второго excel файла
wb2 = load_workbook('файл2.xlsx')
sheet2 = wb2.active

# Объединение двух файлов
for row in sheet2.iter_rows(min_row=2, max_row=sheet2.max_row, min_col=1):
    values = [cell.value for cell in row]
    sheet1.append(values)

# Сохранение объединенного файла
wb1.save('объединенный_файл.xlsx')

В приведенном выше коде мы используем функцию `load_workbook()` для загрузки данных из каждого excel файла в отдельные объекты `wb1` и `wb2`. Затем мы получаем ссылки на активные листы в каждом файле с помощью атрибута `active`. Далее мы итерируемся по строкам второго файла (начиная со второй строки) и добавляем значения в первый файл с помощью метода `append()`. Наконец, мы сохраняем объединенный файл с помощью метода `save()`.

3. Использование библиотеки xlrd и xlwt

Если вы работаете с более старыми версиями excel файлов (.xls), вы можете использовать библиотеки xlrd и xlwt для чтения и записи данных.


import xlrd
import xlwt

# Загрузка данных из первого excel файла
wb1 = xlrd.open_workbook('файл1.xls')
sheet1 = wb1.sheet_by_index(0)

# Загрузка данных из второго excel файла
wb2 = xlrd.open_workbook('файл2.xls')
sheet2 = wb2.sheet_by_index(0)

# Создание нового excel файла
wb3 = xlwt.Workbook()
sheet3 = wb3.add_sheet('Sheet1')

# Копирование данных из первого файла в новый файл
for row in range(sheet1.nrows):
    for col in range(sheet1.ncols):
        sheet3.write(row, col, sheet1.cell_value(row, col))

# Копирование данных из второго файла в новый файл
for row in range(1, sheet2.nrows):  # Пропускаем заголовки второго файла
    for col in range(sheet2.ncols):
        sheet3.write(sheet1.nrows + row - 1, col, sheet2.cell_value(row, col))

# Сохранение нового файла
wb3.save('объединенный_файл.xls')

В этом случае мы используем функции `open_workbook()` из библиотеки xlrd для загрузки данных из каждого файла в отдельные объекты `wb1` и `wb2`. Затем мы получаем доступ к активным листам в каждом файле с помощью методов `sheet_by_index()` и `add_sheet()`. Затем мы копируем данные из первого файла в новый файл с помощью вложенных циклов. Затем мы копируем данные из второго файла, пропуская заголовки, и сохраняем новый файл с помощью метода `save()`.

Заключение

В этой статье мы рассмотрели несколько способов объединения двух excel файлов в один с использованием Python. Вы можете выбрать подход, который лучше всего подходит для ваших потребностей и типа файлов, с которыми вы работаете. Работа с данными в excel файле с использованием Python может быть мощным инструментом для анализа и обработки информации. Удачи в вашем программировании!

Видео по теме

Python Практический. Объединить книги Excel

Python Практический. Объединить книги Excel 2

Python Практический. Объединить книги Excel и листы в них

Похожие статьи:

🚿 Как эффективно стирать вещи в питоне? 🐍

Как работает try в Python? 🧐

🔍 Что делает функция get() в Python? Руководство и примеры 🔍

🔗 Как объединить два excel файла в один с помощью Python 🐍

📂 Как создать временный файл в Python? Легкий подход для новичков

🔎 Как узнать количество строк в файле с помощью Питона: простой способ!

Что такое ndarray в Python? Узнайте все подробности о массиве ndarray в Python