/hydro-tools

sandbox for hydro data retrieval tools

Primary LanguageJupyter Notebook

hydro-tools

sandbox to evaluate open source hydro data retrieval tools.

tools evaluated have ability to retrieve data timeseries data from NWIS.

sandbox is running on a linux box with python 3.8 and jupyter lab.

tools checked if they have been evaluated in hydro-tools.ipynb.

hydro tools:

integration with other tools:

docs and links

hydrofunctions docs

NWIS Help System

USGS Water Services

USGS Parameter Codes

GAGES II

Fox River Gage

Sand Dunes Well

PyPi analysis

streamgaging basics

set up

git clone git@github.com:mlr07/hydro-tools.git

cd hydro-tools

python -m venv ~/env/hydro

source ~/env/hydro/bin/activate/hydro

sudo apt install libgdal-dev (pygeohydro external requirement)

pip install -r requirements.txt

python -m pytest (test to check imports)

jupyter lab

TODO

[x] find NWIS sites to query against:

  • Fox River GB strean gage 040851385
  • Sand Dunes CO groundwater well 374012105410401

in a jupyter notebook and other places that make sense:

look at data:

  • find data codes
    • discharge
    • stage/head
  • pull stream data for services and at fixed time delta with all tools
    • fox river river, gb streamgauge
    • 10/15/2021-10/25/2021
  • compare request strings
  • directly compare returned data
    • data match between tools -timestamps and data
    • congruent data structures (dict, list, dataframe, array)
    • obvious and non obvious data processing
  • pull ground water data
    • sand dunes, co groundwater well
    • repeat checks for stream data

look at code:

  • examine interfaces
    • docstrings
    • functions signatures
    • custom errors
    • structure
    • modules, functions, classes, and objects
  • repo background
    • commits, issues, and branches
    • CI/CD
    • versioning and releases
    • unit and intergration tests
    • pypi and conda downloads
  • pull together integration examples (maybe out of scope)
    • json to pandas to numpy
    • pastas arma
    • scipy interpolation
    • scikit regeression
    • simple web app with bottle.py