Examples
Series

In [1]:
import numpy as np
import pandas as pd
In [2]:
s = pd.Series([2, np.nan, 7, -3, 0])
s
Out[2]:
0    2.0
1    NaN
2    7.0
3   -3.0
4    0.0
dtype: float64

By default, NA values are ignored.

In [3]:
s.cummin()
Out[3]:
0    2.0
1    NaN
2    2.0
3   -3.0
4   -3.0
dtype: float64

To include NA values in the operation, use skipna=False

In [4]:
s.cummin(skipna=False)
Out[4]:
0    2.0
1    NaN
2    NaN
3    NaN
4    NaN
dtype: float64

DataFrame

In [6]:
df = pd.DataFrame([[2.0, 3.0],
                   [4.0, np.nan],
                   [2.0, 0.0]],
                   columns=list('XY'))
df
Out[6]:
X Y
0 2.0 3.0
1 4.0 NaN
2 2.0 0.0

By default, iterates over rows and finds the minimum in each column. This is equivalent
to axis=None or axis='index'.

In [10]:
df.cummin()
Out[10]:
X Y
0 2.0 3.0
1 2.0 NaN
2 2.0 0.0

To iterate over columns and find the minimum in each row, use axis=1

In [11]:
df.cummin(axis=1)
Out[11]:
X Y
0 2.0 2.0
1 4.0 NaN
2 2.0 0.0