xarray.full_like#
- xarray.full_like(other, fill_value, dtype=None)[source]#
Return a new object with the same shape and type as a given object.
- Parameters:
other (
DataArray
,Dataset
orVariable
) – The reference object in inputfill_value (scalar or dict-like) – Value to fill the new object with before returning it. If other is a Dataset, may also be a dict-like mapping data variables to fill values.
dtype (
dtype
or dict-like ofdtype
, optional) – dtype of the new array. If a dict-like, maps dtypes to variables. If omitted, it defaults to other.dtype.
- Returns:
out (
same as object
) – New object with the same shape and type as other, with the data filled with fill_value. Coords will be copied from other. If other is based on dask, the new one will be as well, and will be split in the same chunks.
Examples
>>> x = xr.DataArray( ... np.arange(6).reshape(2, 3), ... dims=["lat", "lon"], ... coords={"lat": [1, 2], "lon": [0, 1, 2]}, ... ) >>> x <xarray.DataArray (lat: 2, lon: 3)> array([[0, 1, 2], [3, 4, 5]]) Coordinates: * lat (lat) int64 1 2 * lon (lon) int64 0 1 2
>>> xr.full_like(x, 1) <xarray.DataArray (lat: 2, lon: 3)> array([[1, 1, 1], [1, 1, 1]]) Coordinates: * lat (lat) int64 1 2 * lon (lon) int64 0 1 2
>>> xr.full_like(x, 0.5) <xarray.DataArray (lat: 2, lon: 3)> array([[0, 0, 0], [0, 0, 0]]) Coordinates: * lat (lat) int64 1 2 * lon (lon) int64 0 1 2
>>> xr.full_like(x, 0.5, dtype=np.double) <xarray.DataArray (lat: 2, lon: 3)> array([[0.5, 0.5, 0.5], [0.5, 0.5, 0.5]]) Coordinates: * lat (lat) int64 1 2 * lon (lon) int64 0 1 2
>>> xr.full_like(x, np.nan, dtype=np.double) <xarray.DataArray (lat: 2, lon: 3)> array([[nan, nan, nan], [nan, nan, nan]]) Coordinates: * lat (lat) int64 1 2 * lon (lon) int64 0 1 2
>>> ds = xr.Dataset( ... {"a": ("x", [3, 5, 2]), "b": ("x", [9, 1, 0])}, coords={"x": [2, 4, 6]} ... ) >>> ds <xarray.Dataset> Dimensions: (x: 3) Coordinates: * x (x) int64 2 4 6 Data variables: a (x) int64 3 5 2 b (x) int64 9 1 0 >>> xr.full_like(ds, fill_value={"a": 1, "b": 2}) <xarray.Dataset> Dimensions: (x: 3) Coordinates: * x (x) int64 2 4 6 Data variables: a (x) int64 1 1 1 b (x) int64 2 2 2 >>> xr.full_like(ds, fill_value={"a": 1, "b": 2}, dtype={"a": bool, "b": float}) <xarray.Dataset> Dimensions: (x: 3) Coordinates: * x (x) int64 2 4 6 Data variables: a (x) bool True True True b (x) float64 2.0 2.0 2.0
See also