Ich habe meinen Kopf gegen meinen Schreibtisch geschlagen, kann nicht herausfinden, ob es einen Weg gibt, vielleicht versuche ich etwas Unmögliches.Merge/Join/Zwei Pandas DataFrames mit MultiIndex-Spalten nach Index und Spalten anhängen
Ich habe zwei DataFrames mit MultiIndex-Spalten (drei Ebenen) und Zeitindex (einzelne Ebene). Die erste ist, wie folgt aus:
border a-b c-d
from a b c
to b a d
2009-03-01 -0.778346 -0.928997 NaN
2009-03-02 -1.352559 1.247335 NaN
2009-03-03 -0.967939 0.432638 NaN
2009-03-04 0.786094 -2.209559 NaN
2009-03-05 -0.001338 1.084152 NaN
2009-03-06 1.163334 NaN NaN
2009-03-07 -0.587593 NaN NaN
2009-03-08 0.118469 NaN NaN
2009-03-09 NaN NaN -1.272959
2009-03-10 NaN NaN -1.207129
2009-03-11 NaN NaN 0.244019
Zu diesem DF möchte ich folgendes hinzufügen:
border a-b
from a
to b
2009-03-09 1.243296
2009-03-10 -0.049870
2009-03-11 1.599999
unter Berücksichtigung sowohl Zeilen und Spalten-Indizes. Das Ergebnis sollte sein:
border a-b c-d
from a b c
to b a d
2009-03-01 -0.778346 -0.928997 NaN
2009-03-02 -1.352559 1.247335 NaN
2009-03-03 -0.967939 0.432638 NaN
2009-03-04 0.786094 -2.209559 NaN
2009-03-05 -0.001338 1.084152 NaN
2009-03-06 1.163334 NaN NaN
2009-03-07 -0.587593 NaN NaN
2009-03-08 0.118469 NaN NaN
2009-03-09 1.243296 NaN -1.272959
2009-03-10 -0.049870 NaN -1.207129
2009-03-11 1.599999 NaN 0.244019
Ich habe verschiedene Möglichkeiten ausprobiert, darunter mit Merge und Mitglied werden, aber kann es nicht zu arbeiten.
Irgendwelche Ideen? Danke im Voraus.
P.S. Ich könnte den Code, den ich verwendet habe, um die zwei DFs oben zu erstellen, wenn es Hilfe ist, aber es ist ein bisschen lang. Aber auf jeden Fall suche ich nach einer generischen Antwort, der genaue Name der Spalten oder der Index für Zeilen ist irrelevant (könnte sogar ein Index für ganze Zahlen sein).
Perfekt, danke. War dieser Methode nicht bewusst. – David
In v0.13.1 unterstützt dies keine andere Join-Methode als left ... Wenn es "äußere" hätte, wäre dies genau das, wonach ich suche! – PhilMacKay