hydromt.data_catalog.adapters.DataFrameAdapter#

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

Data adapter for DataFrames.

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(df: DataFrame, metadata: SourceMetadata | None = None, *, variables: str | List[str] | None = None, time_range: TimeRange | None = None, handle_nodata: NoDataStrategy = NoDataStrategy.RAISE) DataFrame[source]#

Transform data to HydroMT standards.

Parameters:
  • df (pd.DataFrame) – input DataFrame

  • metadata (Optional[SourceMetadata], optional) – MetaData of the source, by default None

  • variables (Optional[Variables], optional) – filter for variables, by default None

  • time_range (Optional[TimeRange], optional) – filter for 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

Returns:

filtered and harmonized DataFrame

Return type:

pd.DataFrame

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