Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich einen Pandas-DataFrame an eine vorhandene Excel-Tabelle in Python anhängen, ohne sie zu überschreiben?

Wie kann ich einen Pandas-DataFrame an eine vorhandene Excel-Tabelle in Python anhängen, ohne sie zu überschreiben?

DDD
DDDOriginal
2024-12-03 12:49:11627Durchsuche

How Can I Append a Pandas DataFrame to an Existing Excel Sheet in Python Without Overwriting?

Vorhandene Excel-Tabelle mit neuem Datenrahmen mit Python Pandas anhängen

Problem:

Sie haben eine vorhandene Excel-Datei und eine Pandas DataFrame. Sie möchten den DataFrame an das Ende der vorhandenen Excel-Tabelle anhängen, ohne sie zu überschreiben.

Lösung:

Es gibt zwei Hauptansätze, um Daten an eine vorhandene Excel-Tabelle anzuhängen Blatt mit Pandas:

Ansatz 1: Verwenden ExcelWriter

import pandas as pd

df = pd.DataFrame(...)

with pd.ExcelWriter('existing_sheet.xlsx', mode='a', engine='openpyxl') as writer:
    df.to_excel(writer, sheet_name='Sheet1', header=False, index=False, startrow=writer.sheets['Sheet1'].max_row + 1)

Ansatz 2: Verwendung von Openpyxl und Pandas

import pandas as pd
from openpyxl import load_workbook

df = pd.DataFrame(...)

# Load existing Excel workbook
book = load_workbook('existing_sheet.xlsx')
sheet = book['Sheet1']

# Find last row in existing Excel sheet
last_row = sheet.max_row

# Append DataFrame data to existing sheet starting from last row + 1
pd.DataFrame.to_excel(df, book, sheet_name='Sheet1', startrow=last_row + 1, index=False)

# Save changes to existing Excel file
book.save('existing_sheet.xlsx')

Zusätzliche Tipps:

  • Wenn das Blatt nicht vorhanden ist, wird Pandas automatisch erstellt it.
  • Sie können die Startzeile zum Anhängen von Daten mit dem Parameter startrow angeben.
  • Um vorhandene Zellstile beizubehalten, legen Sie with_style=True in der Funktion copy_excel_cell_range fest, wenn Sie den Openpyxl- und Pandas-Ansatz verwenden.
  • Für Pandas-Versionen < 1.4.0 verwenden Sie die Hilfsfunktion im verknüpften Codebeispiel, um Daten ohne Überschreiben anzuhängen.

Das obige ist der detaillierte Inhalt vonWie kann ich einen Pandas-DataFrame an eine vorhandene Excel-Tabelle in Python anhängen, ohne sie zu überschreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn