Source code for eotransform_xarray.transformers.add_arrays_to_dataset

from typing import Iterable

from eotransform.protocol.transformer import Transformer
from xarray import DataArray, Dataset


[docs]class AddArraysToDataset(Transformer[Dataset, Dataset]): class MissingDataError(ValueError): ... def __init__(self, arrays: Iterable[DataArray]): self._arrays = arrays def __call__(self, x: Dataset) -> Dataset: for a in self._arrays: if not a.name: raise AddArraysToDataset.MissingDataError(f"The arrays added must provide names, but this didn't:\n{a}") x[a.name] = a return x