xarray.Dataset.map#
- Dataset.map(func, keep_attrs=None, args=(), **kwargs)[source]#
Apply a function to each data variable in this dataset
- Parameters:
func (
callable()) – Function which can be called in the form func(x, *args, **kwargs) to transform each DataArray x in this dataset into another DataArray.keep_attrs (
boolorNone, optional) – If True, both the dataset’s and variables’ attributes (attrs) will be combined from the original objects and the function results using thedrop_conflictsstrategy: matching attrs are kept, conflicting attrs are dropped. If False, the new dataset and variables will have only the attributes set by the function.args (iterable, optional) – Positional arguments passed on to func.
**kwargs (
Any) – Keyword arguments passed on to func.
- Returns:
applied (
Dataset) – Resulting dataset from applyingfuncto each data variable.
Examples
>>> da = xr.DataArray(np.random.randn(2, 3)) >>> ds = xr.Dataset({"foo": da, "bar": ("x", [-1, 2])}) >>> ds <xarray.Dataset> Size: 64B 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 48B 1.764 0.4002 0.9787 2.241 1.868 -0.9773 bar (x) int64 16B -1 2 >>> ds.map(np.fabs) <xarray.Dataset> Size: 64B 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 48B 1.764 0.4002 0.9787 2.241 1.868 0.9773 bar (x) float64 16B 1.0 2.0