unstack
- UnitsAwareDataArray.unstack(dim: Dims = None, *, fill_value: Any = <NA>, sparse: bool = False) Self
- Unstack existing dimensions corresponding to MultiIndexes into multiple new dimensions. - New dimensions will be added at the end. - Parameters:
- dim (str, Iterable of Hashable or None, optional) – Dimension(s) over which to unstack. By default unstacks all MultiIndexes. 
- fill_value (scalar or dict-like, default: nan) – Value to be filled. If a dict-like, maps variable names to fill values. Use the data array’s name to refer to its name. If not provided or if the dict-like does not contain all variables, the dtype’s NA value will be used. 
- sparse (bool, default: False) – Use sparse-array if True 
 
- Returns:
- unstacked – Array with unstacked data. 
- Return type:
- DataArray 
 - Examples - >>> arr = xr.DataArray( ... np.arange(6).reshape(2, 3), ... coords=[("x", ["a", "b"]), ("y", [0, 1, 2])], ... ) >>> arr <xarray.DataArray (x: 2, y: 3)> Size: 48B array([[0, 1, 2], [3, 4, 5]]) Coordinates: * x (x) <U1 8B 'a' 'b' * y (y) int64 24B 0 1 2 >>> stacked = arr.stack(z=("x", "y")) >>> stacked.indexes["z"] MultiIndex([('a', 0), ('a', 1), ('a', 2), ('b', 0), ('b', 1), ('b', 2)], name='z') >>> roundtripped = stacked.unstack() >>> arr.identical(roundtripped) True - See also - DataArray.stack