xarray.DataArray.unstack¶
-
DataArray.
unstack
(dim=None, fill_value=<NA>, sparse=False)¶ Unstack existing dimensions corresponding to MultiIndexes into multiple new dimensions.
New dimensions will be added at the end.
- Parameters
dim (hashable or sequence of hashable, optional) – Dimension(s) over which to unstack. By default unstacks all MultiIndexes.
fill_value (value to be filled. By default, np.nan) –
sparse (use sparse-array if True) –
- Returns
unstacked – Array with unstacked data.
- Return type
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)> array([[0, 1, 2], [3, 4, 5]]) Coordinates: * x (x) |S1 'a' 'b' * y (y) int64 0 1 2 >>> stacked = arr.stack(z=("x", "y")) >>> stacked.indexes["z"] MultiIndex(levels=[['a', 'b'], [0, 1, 2]], codes=[[0, 0, 0, 1, 1, 1], [0, 1, 2, 0, 1, 2]], names=['x', 'y']) >>> roundtripped = stacked.unstack() >>> arr.identical(roundtripped) True
See also