パンダで効率的な要素単位の最小 2 つの Series オブジェクトを実行する方法を見つけるのに苦労しています。たとえば、2 つのシリーズを簡単に追加できます。
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
しかし、2 つのシリーズ間で要素ごとの最小値を計算する効率的な方法を見つけることができません (インデックスの位置合わせと NaN 値の処理に加えて)。
どうでも。要素ごとの関数を配置できるように、結合関数を使用したエスケープ ハッチがあります。
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