pandas.api.typing.Rolling.sum — pandas 3.0.0rc0+33.g1fd184de2a documentation (original) (raw)
Rolling.sum(numeric_only=False, engine=None, engine_kwargs=None)[source]#
Calculate the rolling sum.
Parameters:
numeric_onlybool, default False
Include only float, int, boolean columns.
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
engine_kwargsdict, default None
- For
'cython'engine, there are no acceptedengine_kwargs - For
'numba'engine, the engine can acceptnopython,nogilandparalleldictionary keys. The values must either beTrueorFalse. The defaultengine_kwargsfor the'numba'engine is{'nopython': True, 'nogil': False, 'parallel': False}.
Returns:
Series or DataFrame
Return type is the same as the original object with np.float64 dtype.
See also
Series.rolling
Calling rolling with Series data.
DataFrame.rolling
Calling rolling with DataFrames.
Series.sum
Aggregating sum for Series.
DataFrame.sum
Aggregating sum for DataFrame.
Notes
See Numba engine and Numba (JIT compilation)for extended documentation and performance considerations for the Numba engine.
Examples
s = pd.Series([1, 2, 3, 4, 5]) s 0 1 1 2 2 3 3 4 4 5 dtype: int64
s.rolling(3).sum() 0 NaN 1 NaN 2 6.0 3 9.0 4 12.0 dtype: float64
s.rolling(3, center=True).sum() 0 NaN 1 6.0 2 9.0 3 12.0 4 NaN dtype: float64
For DataFrame, each sum is computed column-wise.
df = pd.DataFrame({"A": s, "B": s**2}) df A B 0 1 1 1 2 4 2 3 9 3 4 16 4 5 25
df.rolling(3).sum() A B 0 NaN NaN 1 NaN NaN 2 6.0 14.0 3 9.0 29.0 4 12.0 50.0