Kopieren pandas dataframe zu excel mit openpyxl
Ich habe einige komplizierte Formatierung in einer Vorlage gespeichert werden Datei, in die ich muss, um Daten zu speichern aus ein pandas dataframe. Problem ist, wenn ich pd.to_excel speichern Sie dieses Arbeitsblatt, pandas überschreibt die Formatierung. Gibt es eine Möglichkeit, irgendwie 'Werte einfügen' form der df in das Arbeitsblatt? Ich bin mit pandas 0.17
import openpyxl
import pandas as pd
wb= openpyxl.load_workbook('H:/template.xlsx')
sheet = wb.get_sheet_by_name('spam')
sheet.title = 'df data'
wb.save('H:/df_out.xlsx')
xlr = pd.ExcelWriter('df_out.xlsx')
df.to_excel(xlr, 'df data')
xlr.save()
InformationsquelleAutor blitz009 | 2016-04-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
openpyxl 2.4 kommt mit einem Dienstprogramm für die Umwandlung von Pandas Dataframes in etwas, das openpyxl arbeiten. Code wäre sehen ein bisschen aus wie diese:
Können Sie über den Anfang der Aufzählung zu setzen die Zellen, wo Sie Sie benötigen.
Sehen openpyxl Dokumentation für weitere Informationen.
Ich denke nicht, dass das überhaupt notwendig ist. Einmal 2.4 veröffentlicht ist, werde ich die Arbeit mit den Pandas machen sich das zu nutze in der
df.to_excel()
Methode.Dies wird mir erlauben, wählen Sie eine andere Zeile aus df zu einer beliebigen Zeile in der Datei, und wiederholen Sie es für alle Zeilen ?
InformationsquelleAutor Charlie Clark
Hier ist die Lösung für Sie mit
Zwischenablage
:Ich war auf der Suche nach so etwas wie Zwischenablage in
openpyxl
, ähnlich wie die Funktionen inpandas
.Es wird die
ws.values
Eigenschaft, die wir werden eine einfache Möglichkeit, um die Werte von einem Arbeitsblatt, aber nicht beschreibbar.ws.iter_cols()
wird eine säulenförmige Schnittstelle für Bearbeitbare Arbeitsblätter.InformationsquelleAutor Abbas