Skip to content

data_array_utils

Library for utility functions regarding an xarray data-arrays

get_time_dimension_name(variable, logger)

Retrieves the dimension name

Parameters:

Name Type Description Default
value_array DataArray

values to get time dimension

required

Exceptions:

Type Description
ValueError

If time dimension could not be found

Returns:

Type Description
str

time dimension name

Source code in utils/data_array_utils.py
def get_time_dimension_name(variable: _xr.DataArray, logger: ILogger) -> str:
    """Retrieves the dimension name

    Args:
        value_array (DataArray): values to get time dimension

    Raises:
        ValueError: If time dimension could not be found

    Returns:
        str: time dimension name
    """

    for dim in variable.dims:
        dim_values = variable[dim]

        # check if the dimension type is a datetime type
        if dim_values.dtype.name.startswith("datetime64"):
            return str(dim)

    message = f"No time dimension found for {variable.name}"
    logger.log_error(message)
    raise ValueError(message)