Ich habe Probleme einen Weg zu finden, um ein effizientes elementweises Minimum von zwei Serien Objekten in Pandas zu erstellen. Zum Beispiel kann ich zwei Serien leicht genug, um hinzuzufügen:Eine elementweise minimale Serie von zwei anderen Serien in Python Pandas erstellen
In [1]:
import pandas as pd
s1 = pd.Series(data=[1,1,1], index=[1,2,3])
s2 = pd.Series(data=[1,2,2,1], index=[1,2,3,4])
s1.add(s2)
Out[1]:
1 2
2 3
3 3
4 NaN
dtype: float64
Aber ich kann nicht eine effiziente Art und Weise zu tun, um ein elementweise Minimum zwischen zwei Serien (zusammen mit dem Indizes Ausrichtung und Handhabung NaN-Werte) finden.
Vergesst. Es gibt einen Notausstieg mit der Funktion kombinieren, so können Sie jedes Element weise Funktion setzen in:
In [2]:
s1 = pd.Series(data=[1,1,1], index=[1,2,3])
s2 = pd.Series(data=[1,2,2,1], index=[1,2,3,4])
s1.combine(s2, min, 0)
Out[2]:
1 1
2 1
3 1
4 0
dtype: int64
Ich denke, man sollte das Bit nach „macht nichts“ als Antwort, anstatt am Ende der Frage (ich würde upvote) hinzufügen ... Obwohl ich, dass 'min (1 nicht einverstanden ist, NaN) == 0' .... –