У меня возникли проблемы с поиском способа сделать эффективный поэтапный минимум из двух объектов серии в pandas. Например, я могу добавить две серии достаточно легко:
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
Но я не могу найти эффективный способ сделать поэтапный минимум между двумя рядами (наряду с выравниванием индексов и обработкой значений NaN).
Nevermind. Существует контрольный штрих с функцией комбайна, поэтому вы можете использовать любую элементарную функцию:
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