xarray.Dataset.cumsum (original) (raw)

Dataset.cumsum(dim=None, *, skipna=None, keep_attrs=None, **kwargs)[source]#

Reduce this Dataset’s data by applying cumsum along some dimension(s).

Parameters:

Returns:

reduced (Dataset) – New Dataset with cumsum applied to its data and the indicated dimension(s) removed

Notes

Non-numeric variables will be removed prior to reducing.

Note that the methods on the cumulative method are more performant (with numbagg installed) and better supported. cumsum and cumprod may be deprecated in the future.

Examples

da = xr.DataArray( ... np.array([1, 2, 3, 0, 2, np.nan]), ... dims="time", ... coords=dict( ... time=("time", pd.date_range("2001-01-01", freq="ME", periods=6)), ... labels=("time", np.array(["a", "b", "c", "c", "b", "a"])), ... ), ... ) ds = xr.Dataset(dict(da=da)) ds <xarray.Dataset> Size: 120B Dimensions: (time: 6) Coordinates:

ds.cumsum() <xarray.Dataset> Size: 48B Dimensions: (time: 6) Dimensions without coordinates: time Data variables: da (time) float64 48B 1.0 3.0 6.0 6.0 8.0 8.0

Use skipna to control whether NaNs are ignored.

ds.cumsum(skipna=False) <xarray.Dataset> Size: 48B Dimensions: (time: 6) Dimensions without coordinates: time Data variables: da (time) float64 48B 1.0 3.0 6.0 6.0 8.0 nan