Ich habe zwei DataFrames
(mit DatetimeIndex
) und möchte das erste Bild (das ältere) mit Daten aus dem zweiten Bild (das neuere) aktualisieren.
Der neue Rahmen kann aktuellere Daten für Reihen enthalten, die bereits in dem alten Rahmen enthalten sind. In diesem Fall sollten Daten im alten Rahmen mit Daten aus dem neuen Rahmen überschrieben werden. Auch der neuere Frame kann mehr Spalten / Zeilen haben als der erste. In diesem Fall sollte der alte Rahmen um die Daten im neuen Rahmen vergrößert werden.
Pandas Dokumente geben an, dass
"Die Operationen .loc/.ix/[]
können beim Einstellen eines nicht vorhandenen Schlüssels für diese Achse eine Vergrößerung ausführen"
und
"Ein DataFrame kann auf jeder Achse über .loc
"
Dies scheint jedoch nicht zu funktionieren und wirft ein KeyError
. Beispiel:
Was ist der beste Weg (in Bezug auf die Leistung, wie meine realen Daten sind viel größer) zwei erreichen die gewünschte aktualisierte und erweiterte DataFrame. Das ist das Ergebnis, das ich gerne sehen würde:
%Vor% df2.combine_first(df1)
( Dokumentation )
scheint Ihrer Anforderung zu dienen; PFB-Code-Schnipsel & amp; Ausgabe