⚡ Usage
Install
pip install baseflow
Example
import baseflow
import pandas as pd
df = pd.read_csv(baseflow.example, index_col=0)
df_sta = pd.DataFrame(data=[[30, -28.4, 659], [-109.4, 33, 1611]],
index=df.columns, columns=['lon', 'lat', 'area'])
dfs, df_kge = baseflow.separation(df, df_sta, return_kge=True)
print(f'Best Method:\n{df_kge.idxmax(axis=1)}')
Project Structure
The directory structure of baseflow looks like this:
├── methods <- implements for 12 baseflow separation methods
│
├── recession_analysis <- tools for estimating recession coefficiency
│
├── param_estimate <- backward and calibration approaches to estimate other parameters
│
├── comparison <- an evaluation criterion to comparison different methods
│
├── requirements.txt <- File for installing baseflow dependencies
│
└── README.md
📌 Todo
Nolinear reservoir assumption
- Implement the nolinear reservoir assumption from the paper
- Employ a time-varing recession coefficiency for baseflow separation
Applicable to other time scales
- The current version only applies to the daily scale
- The package needs to be updated to support hourly baseflow separation
🚀 Publications
The following articles detail the baseflow separation methods and their evaluation criterion.
- Xie, J., Liu, X., Jasechko, S., Berghuijs, W. R., Wang, K., Liu, C., Reichstein, M., Jung, M., & Koirala, S. (2024). Majority of global river flow sustained by groundwater. Nature Geoscience, 17(8), 770–777. https://doi.org/10.1038/s41561-024-01483-5
- Xie, J., Liu, X., Wang, K., Yang, T., Liang, K., & Liu, C. (2020). Evaluation of typical methods for baseflow separation in the contiguous United States. Journal of Hydrology, 583, 124628. https://doi.org/10.1016/j.jhydrol.2020.124628
Release files for baseflow 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| baseflow-0.1.0.tar.gz | 101.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| baseflow-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 202.2 kB
Release files / baseflow-0.1.0.tar.gz
| Download URL | baseflow-0.1.0.tar.gz |
|---|---|
| Size | 101.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e715bea9f3dc6186902657361a4581510b6e721b5b5d43b86530d95868f9fd54
|
|
BLAKE2b-256 checksum How to use checksums |
be7a8a3aa39cd78b7d4c872c66eb6474783f8f713e96e5b4091ac9bd65fd4192
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|
Release files / baseflow-0.1.0-py3-none-any.whl
| Download URL | baseflow-0.1.0-py3-none-any.whl |
|---|---|
| Size | 101.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7e613c73162c3fbea3b6a3269d656c87547e455baf2de27472a1634ba94566cf
|
|
BLAKE2b-256 checksum How to use checksums |
15cded94d70bec5a8aca1b6f3b32147da4d70953880b83fc1b89decd983298da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|