Skip to content

Commit 61b7334

Browse files
committed
Add DataArray.rename_dims, DataArray.rename_vars
1 parent 6ba4509 commit 61b7334

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed

xarray/core/dataarray.py

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1466,6 +1466,65 @@ def rename(
14661466
new_name_or_name_dict = cast(Hashable, new_name_or_name_dict)
14671467
return self._replace(name=new_name_or_name_dict)
14681468

1469+
def rename_dims(
1470+
self, dims_dict: Mapping[Hashable, Hashable] = None, **dims: Hashable
1471+
) -> "DataArray":
1472+
"""Returns a new object with renamed dimensions only.
1473+
1474+
Parameters
1475+
----------
1476+
dims_dict : dict-like, optional
1477+
Dictionary whose keys are current dimension names and
1478+
whose values are the desired names.
1479+
**dims, optional
1480+
Keyword form of ``dims_dict``.
1481+
One of dims_dict or dims must be provided.
1482+
1483+
Returns
1484+
-------
1485+
renamed : Dataset
1486+
Dataset with renamed dimensions.
1487+
1488+
See Also
1489+
--------
1490+
Dataset.swap_dims
1491+
Dataset.rename
1492+
Dataset.rename_vars
1493+
DataArray.rename
1494+
"""
1495+
dims_dict = either_dict_or_kwargs(dims_dict, dims, "rename_dims")
1496+
ds = self._to_temp_dataset().rename_dims(dims_dict)
1497+
return self._from_temp_dataset(ds)
1498+
1499+
def rename_vars(
1500+
self, name_dict: Mapping[Hashable, Hashable] = None, **names: Hashable
1501+
) -> "DataArray":
1502+
"""Returns a new object with renamed variables including coordinates
1503+
1504+
Parameters
1505+
----------
1506+
name_dict : dict-like, optional
1507+
Dictionary whose keys are current variable or coordinate names and
1508+
whose values are the desired names.
1509+
**names, optional
1510+
Keyword form of ``name_dict``.
1511+
One of name_dict or names must be provided.
1512+
1513+
Returns
1514+
-------
1515+
renamed : Dataset
1516+
Dataset with renamed variables including coordinates
1517+
1518+
See Also
1519+
--------
1520+
Dataset.swap_dims
1521+
Dataset.rename
1522+
Dataset.rename_dims
1523+
DataArray.rename
1524+
"""
1525+
ds = self._to_temp_dataset().rename_vars(name_dict)
1526+
return self._from_temp_dataset(ds)
1527+
14691528
def swap_dims(self, dims_dict: Mapping[Hashable, Hashable]) -> "DataArray":
14701529
"""Returns a new DataArray with swapped dimensions.
14711530

0 commit comments

Comments
 (0)