pandas.core.window.rolling.Rolling.var#
- Rolling.var(ddof=1, *args, engine=None, engine_kwargs=None, **kwargs)[source]#
Calculate the rolling variance.
- Parameters
- ddofint, default 1
Delta Degrees of Freedom. The divisor used in calculations is
N - ddof
, whereN
represents the number of elements.- *args
For NumPy compatibility and will not have an effect on the result.
- enginestr, default None
'cython'
: Runs the operation through C-extensions from cython.'numba'
: Runs the operation through JIT compiled code from numba.None
: Defaults to'cython'
or globally settingcompute.use_numba
New in version 1.4.0.
- engine_kwargsdict, default None
For
'cython'
engine, there are no acceptedengine_kwargs
For
'numba'
engine, the engine can acceptnopython
,nogil
andparallel
dictionary keys. The values must either beTrue
orFalse
. The defaultengine_kwargs
for the'numba'
engine is{'nopython': True, 'nogil': False, 'parallel': False}
New in version 1.4.0.
- **kwargs
For NumPy compatibility and will not have an effect on the result.
- Returns
- Series or DataFrame
Return type is the same as the original object with
np.float64
dtype.
See also
numpy.var
Equivalent method for NumPy array.
pandas.Series.rolling
Calling rolling with Series data.
pandas.DataFrame.rolling
Calling rolling with DataFrames.
pandas.Series.var
Aggregating var for Series.
pandas.DataFrame.var
Aggregating var for DataFrame.
Notes
The default
ddof
of 1 used inSeries.var()
is different than the defaultddof
of 0 innumpy.var()
.A minimum of one period is required for the rolling calculation.
The implementation is susceptible to floating point imprecision as shown in the example below.
Examples
>>> s = pd.Series([5, 5, 6, 7, 5, 5, 5]) >>> s.rolling(3).var() 0 NaN 1 NaN 2 3.333333e-01 3 1.000000e+00 4 1.000000e+00 5 1.333333e+00 6 6.661338e-16 dtype: float64