hydromt.data_catalog.adapters.RasterDatasetAdapter#

pydantic model hydromt.data_catalog.adapters.RasterDatasetAdapter[source]#

Implementation for the RasterDatasetAdapter.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

transform(ds: Dataset, metadata: SourceMetadata, *, mask: GeoDataFrame | GeoSeries | None = None, align: bool | None = None, variables: str | List[str] | None = None, time_range: TimeRange | None = None, handle_nodata: NoDataStrategy = NoDataStrategy.RAISE, single_var_as_array: bool = True, buffer: int = 0) Dataset | DataArray | None[source]#

Filter and harmonize the input RasterDataset.

Parameters:
  • ds (xr.Dataset) – input RasterDataset

  • metadata (SourceMetadata) – source metadata

  • mask (Optional[gpd.GeoDataFrame], optional) – mask to filter by geometry, by default None

  • variables (Optional[List[str]], optional) – variable filter, by default None

  • time_range (Optional[TimeRange], optional) – filter start and end times, by default None

  • handle_nodata (NoDataStrategy, optional) – how to handle no data being present in the result, by default NoDataStrategy.RAISE

  • single_var_as_array (bool, optional) – whether to return a xr.DataArray if only a single variable is present, by default True

  • buffer (int, optional) – Buffer around the bbox or geom area of interest expressed in resolution multiplicity, by default 0

Returns:

The filtered and harmonized RasterDataset, or None if no data was available

Return type:

Optional[xr.Dataset]

Raises:
  • ValueError – if not all variables are found in the data

  • NoDataException – if no data in left after slicing and handle_nodata is NoDataStrategy.RAISE