Python package for working with the CAMELS-DE dataset
Project description
CAMELS-DE 🌊
A Python package for working with the CAMELS-DE dataset.
About 🐪
CAMELS-DE provides access to hydrometeorological time series data and catchment attributes for 1582 catchments in Germany. This package offers a simple interface for loading, analyzing, and visualizing data from the CAMELS-DE dataset.
Installation
pip install camelsde
Usage
[!IMPORTANT] The package requires the CAMELS-DE dataset to be downloaded and extracted.
CAMELS-DE can be downloaded from Zenodo: 10.5281/zenodo.13837553
- The package uses
polarsfor reading csv files efficiently, but the functions returnpandasDataFrames at the moment. - Gauging station point locations and catchment polygons are returned as
geopandasGeodataFrames. - Interactive time series plots are created using
plotly.
Setting the CAMELS-DE Dataset Path
The package will look for the dataset in the following order:
pathargument passed to theCAMELS_DEclass constructor.- User-configured permanent path (if set).
CAMELSDE_PATHenvironment variable (if set)
You can set a permanent path to your CAMELS-DE dataset in following ways:
from camelsde import CAMELS_DE, set_camels_path
# Option 1: Temporarily override the path for a specific instance
camelsde = CAMELS_DE(path="/path/to/your/CAMELS_DE_v1_0_0")
# Option 2: Set a permanent path that will be remembered across sessions
set_camels_path("/path/to/your/CAMELS_DE_v1_0_0")
camelsde = CAMELS_DE() # Now this will use the permanent path
The permanent path is stored in a configuration file in your user config directory, which makes it available across all future Python sessions.
Basic Usage Examples
from camelsde import CAMELS_DE
# Initialize (uses the configured path or default)
camelsde = CAMELS_DE()
# Load static attributes
attributes = camelsde.load_static_attributes()
# Load specific attributes
hydro_attrs = camelsde.load_static_attributes(static_attribute="hydrology")
# Load specific columns across all static attribute files
attributes2 = camelsde.load_static_attributes(columns=["gauge_name", "gauge_elev", "area", "NSE_lstm", "NSE_hbv"])
# Load specific columns and apply filtering
attributes3 = camelsde.load_static_attributes(columns=["gauge_name", "gauge_elev", "area", "NSE_lstm", "NSE_hbv"], filters={"NSE_lstm": (">=", 0.9), "area": [ (">=", 50), ("<=", 100)]})
# Load specific gauge ID
gauge_data = camelsde.load_static_attributes(gauge_id="DE110000")
# Load timeseries data
ts_data = camelsde.load_timeseries(gauge_id="DE110000")
# Plot timeseries with Plotly
camelsde.plot_timeseries(gauge_id="DE110000", columns=["precipitation", "discharge_spec_obs", "discharge_spec_sim_lstm"])
# Load geospatial data (returns a geopandas GeoDataFrame)
catchments = camelsde.load_geopackage(layer="catchments")
stations = camelsde.load_geopackage(layer="gauging_stations")
Dataset
This package works with the CAMELS-DE v1.0.0 dataset, which is publicly available at:
The dataset needs to be downloaded and extracted before using this package.
Citation
If you use this package or the CAMELS-DE dataset in your research, please cite both the data description paper and the dataset itself:
- Dataset: CAMELS-DE v1.0.0
- Data description paper: CAMELS-DE: hydrometeorological time series and attributes for 1582 catchments in Germany
License
This package is distributed under the CC0 1.0 Universal License. See the LICENSE file for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file camelsde-0.2.0.tar.gz.
File metadata
- Download URL: camelsde-0.2.0.tar.gz
- Upload date:
- Size: 10.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70d0aa26137f01995918f91c9bbc8a047b431b76016d4c048808e79bb3db43bb
|
|
| MD5 |
aab46efb8c4556f1abef31767b505d20
|
|
| BLAKE2b-256 |
afddb15a82dfed0c4ac1f394982b46b67c4c52b0f3cfb96bf5e6b1c185cd578e
|
Provenance
The following attestation bundles were made for camelsde-0.2.0.tar.gz:
Publisher:
build-test-publish.yml on CAMELS-DE/camelsde
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
camelsde-0.2.0.tar.gz -
Subject digest:
70d0aa26137f01995918f91c9bbc8a047b431b76016d4c048808e79bb3db43bb - Sigstore transparency entry: 198972479
- Sigstore integration time:
-
Permalink:
CAMELS-DE/camelsde@eb3ad7da7fb854f755ddceb5c08f0dfd71540df0 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/CAMELS-DE
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-test-publish.yml@eb3ad7da7fb854f755ddceb5c08f0dfd71540df0 -
Trigger Event:
release
-
Statement type:
File details
Details for the file camelsde-0.2.0-py3-none-any.whl.
File metadata
- Download URL: camelsde-0.2.0-py3-none-any.whl
- Upload date:
- Size: 13.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8d397669c8fff5c9e74327146e9f2e4d98aae027fdb0b6232bd4dfbf4f476c5
|
|
| MD5 |
494b40bdabfa252be37ed4f71d5f4419
|
|
| BLAKE2b-256 |
6ec8d5a4094ac8ee05477827e2eb9d87c62dd6b48ac237796f1a2fef0cb905b4
|
Provenance
The following attestation bundles were made for camelsde-0.2.0-py3-none-any.whl:
Publisher:
build-test-publish.yml on CAMELS-DE/camelsde
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
camelsde-0.2.0-py3-none-any.whl -
Subject digest:
e8d397669c8fff5c9e74327146e9f2e4d98aae027fdb0b6232bd4dfbf4f476c5 - Sigstore transparency entry: 198972483
- Sigstore integration time:
-
Permalink:
CAMELS-DE/camelsde@eb3ad7da7fb854f755ddceb5c08f0dfd71540df0 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/CAMELS-DE
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-test-publish.yml@eb3ad7da7fb854f755ddceb5c08f0dfd71540df0 -
Trigger Event:
release
-
Statement type: