View source: R/add_cumulative_yield.R
add_cumulative_yield | R Documentation |
Add a column of rolling daily cumulative water yields on an annual basis to a daily streamflow data set. Adds the
water yields from each day with the previous day(s) for each year, in units of millimetres. Converts cumulative
discharge to a depth of water based on the upstream drainage basin area from basin_area
argument. The cumulative flows
restart every year and are only calculated in years with complete data.
add_cumulative_yield(
data,
dates = Date,
values = Value,
groups = STATION_NUMBER,
station_number,
basin_area,
water_year_start = 1,
months = 1:12
)
data |
Data frame of daily data that contains columns of dates, flow values, and (optional) groups (e.g. station numbers).
Leave blank or set to |
dates |
Name of column in |
values |
Name of column in |
groups |
Name of column in |
station_number |
Character string vector of seven digit Water Survey of Canada station numbers (e.g. |
basin_area |
Upstream drainage basin area, in square kilometres, to apply to observations. Three options: (1) Leave blank if (2) A single numeric value to apply to all observations. (3) List each basin area for each group/station in groups (can override HYDAT value if listed) as such |
water_year_start |
Numeric value indicating the month ( |
months |
Numeric vector of months to add cumulative flows. For example, |
A tibble data frame of the source data with an additional column:
Cumul_Yield_mm |
cumulative yield flows for each day for each year, in units of millimetres |
# Run if HYDAT database has been downloaded (using tidyhydat::download_hydat())
if (file.exists(tidyhydat::hy_downloaded_db())) {
# Add a column based on water years starting in August
add_cumulative_yield(station_number = "08NM116",
water_year_start = 8)
# Add a column based on water years starting in August with a custom basin area to calculate yield
add_cumulative_yield(station_number = "08NM116",
water_year_start = 8,
basin_area = 800)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.