convert_units

earthkit.utils.units.convert_units(data: Any, target_units: str | Unit | Units | dict[str, str | Unit | Units] | None = None, source_units: str | Unit | Units | dict[str, str | Unit | Units] | None = None) Any[source]

Convert units for arrays, xarray.DataArray, or xarray.Dataset objects.

Parameters:
  • data (array-like or xarray.DataArray or xarray.Dataset) – The data to convert.

  • target_units (str or dict, optional) – The units to convert to. If a dict, maps variable/DataArray names to target unit strings.

  • source_units (str or dict, optional) – The units of the data. If a dict, maps variable/DataArray names to source unit strings. If a str and data is a Dataset, acts as a filter (only variables whose current units match are converted). If None and data is a DataArray, tries to read from data.attrs["units"]. If data is a Dataset and source_units is None, variables with units compatible with target_units will be converted.

Returns:

The converted data.

Return type:

array-like or xarray.DataArray or xarray.Dataset