R/calc_daily_cumulative_stats.R
calc_daily_cumulative_stats.Rd
Calculate cumulative daily flow statistics for each day of the year of daily flow values from a daily streamflow
data set. Defaults to volumetric cumulative flows, can use use_yield
and basin_area
to convert to area-based
water yield. Calculates statistics from all values from all complete years, unless specified. Returns a tibble with statistics.
calc_daily_cumulative_stats( data, dates = Date, values = Value, groups = STATION_NUMBER, station_number, percentiles = c(5, 25, 75, 95), use_yield = FALSE, basin_area, water_year_start = 1, start_year, end_year, exclude_years, transpose = FALSE )
data | Data frame of daily data that contains columns of dates, flow values, and (optional) groups (e.g. station numbers).
Leave blank if using |
---|---|
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. |
percentiles | Numeric vector of percentiles to calculate. Set to |
use_yield | Logical value indicating whether to calculate area-based water yield, in mm, instead of volumetric discharge.
Default |
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 ( |
start_year | Numeric value of the first year to consider for analysis. Leave blank to use the first year of the source data. |
end_year | Numeric value of the last year to consider for analysis. Leave blank to use the last year of the source data. |
exclude_years | Numeric vector of years to exclude from analysis. Leave blank to include all years. |
transpose | Logical value indicating whether to transpose rows and columns of results. Default |
A data frame with the following columns, default units in cubic metres, millimetres if use_yield and basin_area provided:
date (MMM-DD) of daily cumulative statistics
day of year of daily cumulative statistics
daily mean of all cumulative flows for a given day of the year
daily mean of all cumulative flows for a given day of the year
daily mean of all cumulative flows for a given day of the year
daily mean of all cumulative flows for a given day of the year
each daily n-th percentile selected of all cumulative flows for a given day of the year
daily 5th percentile of all cumulative flows for a given day of the year
daily 25th percentile of all cumulative flows for a given day of the year
daily 75th percentile of all cumulative flows for a given day of the year
daily 95th percentile of all cumulative flows for a given day of the year
# Run if HYDAT database has been downloaded (using tidyhydat::download_hydat()) if (file.exists(tidyhydat::hy_downloaded_db())) { # Calculate annual daily cumulative volume statistics calc_daily_cumulative_stats(station_number = "08NM116") # Calculate annual daily cumulative yield statistics # with default HYDAT basin area calc_daily_cumulative_stats(station_number = "08NM116", use_yield = TRUE) # Calculate annual daily cumulative yield statistics # with custom basin area calc_daily_cumulative_stats(station_number = "08NM116", use_yield = TRUE, basin_area = 800) }#> Warning: One or more years contained partial data and were excluded. Only years with complete data were used for calculations.#> Warning: One or more years contained partial data and were excluded. Only years with complete data were used for calculations.#> Warning: One or more years contained partial data and were excluded. Only years with complete data were used for calculations.#> # A tibble: 365 x 11 #> STATION_NUMBER Date DayofYear Mean Median Minimum Maximum P5 P25 #> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> #> 1 08NM116 Jan-~ 1 0.114 0.0971 0.0354 0.271 0.0537 0.0740 #> 2 08NM116 Jan-~ 2 0.224 0.193 0.0689 0.515 0.106 0.147 #> 3 08NM116 Jan-~ 3 0.333 0.288 0.100 0.727 0.157 0.220 #> 4 08NM116 Jan-~ 4 0.443 0.382 0.131 0.961 0.208 0.300 #> 5 08NM116 Jan-~ 5 0.551 0.482 0.164 1.19 0.258 0.384 #> 6 08NM116 Jan-~ 6 0.658 0.571 0.198 1.40 0.309 0.459 #> 7 08NM116 Jan-~ 7 0.768 0.666 0.231 1.61 0.360 0.534 #> 8 08NM116 Jan-~ 8 0.883 0.762 0.265 1.81 0.410 0.607 #> 9 08NM116 Jan-~ 9 0.998 0.865 0.300 2.26 0.459 0.686 #> 10 08NM116 Jan-~ 10 1.11 0.957 0.337 2.76 0.508 0.763 #> # ... with 355 more rows, and 2 more variables: P75 <dbl>, P95 <dbl>