Neue Blätter in einer vorhandenen Excel-Datei mit Pandas speichern
Das Ziel besteht darin, mehrere Blätter in eine vorhandene Excel-Datei zu schreiben, ohne die vorhandene zu überschreiben Daten.
Originalcode:
Der bereitgestellte Code speichert zwei DataFrames in zwei Blättern in einer Excel-Datei mithilfe der „xlsxwriter“-Engine. Der Versuch, neue Blätter hinzuzufügen, führt jedoch zum Verlust der Originaldaten.
Verwendung der „openpyxl“-Engine:
Um vorhandene Daten beizubehalten, verwenden Sie „openpyxl“. Motor. Der folgende Code zeigt, wie das geht:
import pandas as pd
import numpy as np
from openpyxl import load_workbookpath = r"C:UsersfedelDesktopexcelDataPhD_data .xlsx"
Excel-Datei mit Anfangsblättern erstellen
x1 = np.random.randn(100, 2)
df1 = pd.DataFrame(x1)x2 = np.random.randn(100, 2)
df2 = pd.DataFrame(x2)writer = pd.ExcelWriter(path, engine='xlsxwriter')
df1.to_excel (writer, sheet_name='x1')
df2.to_excel(writer, sheet_name='x2')
writer.close()Laden Sie die Arbeitsmappe und hängen Sie sie an den Writer an
book = load_workbook(path)
writer = pd.ExcelWriter(path, engine='openpyxl')
writer.book = bookNeue Blätter und DataFrames hinzufügen
x3 = np.random.randn(100, 2)
df3 = pd.DataFrame(x3)x4 = np.random.randn(100, 2)
df4 = pd.DataFrame (x4)df3.to_excel(writer, sheet_name='x3')
df4.to_excel(writer, sheet_name='x4')
writer.close()
pre>Den Code verstehen:
Der Code durchläuft die Arbeitsblätter in einer Schleife in der Arbeitsmappe und weist sie einem Wörterbuch zu, wobei der Schlüssel der Blatttitel und der Wert das Blattobjekt ist. Dadurch kann der Autor neue Blätter und Daten an die vorhandene Datei anhängen, ohne vorhandene Blätter zu überschreiben.
Das obige ist der detaillierte Inhalt vonWie kann ich mit Pandas neue Blätter zu einer vorhandenen Excel-Datei hinzufügen, ohne Daten zu überschreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!