River Discharge Data Analysis
This lab is appropriate for advanced undergraduates and graduate students majoring in earth science/engineering.
We will be looking at data on river discharge--the volume of water transported through a given cross section per time--in the Colorado River. This Jupyter Notebook lends itself to a short introduction on the concept of river discharge and how it is measured, as well as an introduction to the gauging stations of the USGS. The data analysis requires basic Python data handling skills, but the coding is introductory level.
Students can run the Notebook, and they're encouraged to do assignments on their own or as homework. A review and discussion of solutions by the instructor after completion by the participants is recommended.This lab can be run on the CSDMS JupyterHub. (If you don't already have an account there, follow the instructions to sign up at: https://csdms.colorado.edu/wiki/JupyterHub.) Run the lab Notebook by clicking the "start" link under the Run online heading at the top of this page. If you're an educator using this lab in a class, you can get CSDMS JupyterHub accounts for students. For more information, please contact us through the CSDMS Help Desk: https://github.com/csdms/help-desk.
Download associated file: RiverStageDischargeIntroduction.pdf
Concept Diagrams of Stage and Discharge Measurements
- Load data from a CSV file using the pandas library
- Access data in a DataFrame
- Create plots of data from a DataFrame
- Save plots to a file
- River discharge and stage
- Stage-discharge relationship
- Difficulties in relating stage to discharge
River discharge data for many US rivers is available from the USGS WaterWatch website:
River stage data is typically measured by keeping track of the water surface height over time, i.e. stage, and this needs to be converted to discharge through a stage-discharge relationship.
Tabular data like these, with a combination of dates, name and data quality strings, and numbers are best handled by spreadsheets where entries such as dates and times are in some useful format. In Python the Python Data Analysis Library (a.k.a. Pandas) is really useful for this purpose.We use one discharge data file downloaded for the USGS station at Kremmling, CO, for the Upper Colorado.
This material is based upon work supported by the National Science Foundation under Grant No. 1831623, Community Facility Support: The Community Surface Dynamics Modeling System (CSDMS).