Ich habe 2 Pandas-Datenrahmen mit identischen Zeilen und Spalten aber verschiedenen Werten und ich versuche, den maximalen Wert aus jeder Zeile eines Datenrahmens zu verwenden und den Wert aus dem entsprechenden zurückzugeben Standort im anderen Datenrahmen.Maximale Werte in der Pandas-Datenbank, um entsprechende Werte in einem anderen Datenrahmen zurückzugeben
Zum Beispiel:
A = DataFrame(np.arange(9).reshape((3, 3)), index=['d1', 'd2', 'd3'], columns=['s1', 's2', 's3'])
B = DataFrame(np.random.randn(3, 3), index=['d1', 'd2', 'd3'], columns=['s1', 's2', 's3'])
gibt so etwas wie:
s1 s2 s3 s1 s2 s3
d1 0 1 2 d1 -0.02 0.01 0.05
d2 3 4 5 d2 0.01 -0.03 -0.03
d3 6 7 8 d3 0.04 -0.06 0.02
Ich kann die max Werte von B erhalten mit 'B.Max (Achse = 1)', aber ich will zurückkehren die entsprechenden Werte von A. ich bin auf der Suche nach so etwas wie:
d1 2
d2 3
d3 6
Ich bin nicht sicher, das ist, was ich war nach . Vielleicht war ich nicht klar. Ich möchte die maximalen Zahlen für jede in B gefundene Zeile verwenden und die rohen Zahlen von A zurückgeben, die sich an derselben Stelle im Datenrahmen befinden. Also, wenn (d1, s3) ist das Maximum für die Zeile d1 in B, ich möchte (d1, s3) von A zurückgegeben werden, 2. – HenryB
So wollen Sie 'A [B == B.max (Achse = 1)] '? – EdChum
OK haben aktualisiert – EdChum