xarray.Dataset.apply¶
-
Dataset.
apply
(func, keep_attrs=False, args=(), **kwargs)¶ Apply a function over the data variables in this dataset.
Parameters: - func : function
Function which can be called in the form f(x, **kwargs) to transform each DataArray x in this dataset into another DataArray.
- keep_attrs : bool, optional
If True, the dataset’s attributes (attrs) will be copied from the original object to the new one. If False, the new object will be returned without attributes.
- args : tuple, optional
Positional arguments passed on to func.
- **kwargs : dict
Keyword arguments passed on to func.
Returns: - applied : Dataset
Resulting dataset from applying
func
over each data variable.
Examples
>>> da = xr.DataArray(np.random.randn(2, 3)) >>> ds = xr.Dataset({'foo': da, 'bar': ('x', [-1, 2])}) >>> ds <xarray.Dataset> Dimensions: (dim_0: 2, dim_1: 3, x: 2) Dimensions without coordinates: dim_0, dim_1, x Data variables: foo (dim_0, dim_1) float64 -0.3751 -1.951 -1.945 0.2948 0.711 -0.3948 bar (x) int64 -1 2 >>> ds.apply(np.fabs) <xarray.Dataset> Dimensions: (dim_0: 2, dim_1: 3, x: 2) Dimensions without coordinates: dim_0, dim_1, x Data variables: foo (dim_0, dim_1) float64 0.3751 1.951 1.945 0.2948 0.711 0.3948 bar (x) float64 1.0 2.0