View source: R/calc_longterm_monthly_stats.R
| calc_longterm_monthly_stats | R Documentation | 
Calculates the long-term mean, median, maximum, minimum, and percentiles of annual monthly mean flow values for all months and all data (Long-term) from a daily streamflow data set. Calculates statistics from all values, unless specified. Returns a tibble with statistics.
calc_longterm_monthly_stats(
  data,
  dates = Date,
  values = Value,
  groups = STATION_NUMBER,
  station_number,
  percentiles = c(10, 90),
  roll_days = 1,
  roll_align = "right",
  water_year_start = 1,
  start_year,
  end_year,
  exclude_years,
  months = 1:12,
  complete_years = FALSE,
  include_annual = TRUE,
  custom_months,
  custom_months_label,
  transpose = FALSE,
  ignore_missing = FALSE
)
| 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.  | 
| percentiles | Numeric vector of percentiles to calculate. Set to  | 
| roll_days | Numeric value of the number of days to apply a rolling mean. Default  | 
| roll_align | Character string identifying the direction of the rolling mean from the specified date, either by the first 
( | 
| water_year_start | Numeric value indicating the month ( | 
| start_year | Numeric value of the first year to consider for analysis. Leave blank or set well before start date (i.e.
 | 
| end_year | Numeric value of the last year to consider for analysis. Leave blank or set well after end date (i.e.
 | 
| exclude_years | Numeric vector of years to exclude from analysis. Leave blank or set to  | 
| months | Numeric vector of months to include in analysis. For example,  | 
| complete_years | Logical values indicating whether to include only years with complete data in analysis. Default  | 
| include_annual | Logical value indicating whether to include annual calculation of all months. Default  | 
| custom_months | Numeric vector of months to combine to summarize (ex.  | 
| custom_months_label | Character string to label custom months. For example, if  | 
| transpose | Logical value indicating whether to transpose rows and columns of results. Default  | 
| ignore_missing | Logical value indicating whether dates with missing values should be included in the calculation. If
 | 
A tibble data frame with the following columns:
| Month | month of the year, included 'Annual' for all months, and 'Custom-Months' if selected | 
| Mean | mean of all annual monthly means for a given month over all years | 
| Median | median of all annual monthly means for a given month over all years | 
| Maximum | maximum of all annual monthly means for a given month over all years | 
| Minimum | minimum of all annual monthly means for a given month over all years | 
| P'n' | each n-th percentile selected for annual monthly means for a given month over all years | 
Default percentile columns:
| P10 | annual 10th percentile selected for annual monthly means for a given month over all years | 
| P90 | annual 90th percentile selected for annual monthly means for a given month over all years | 
Transposing data creates a column of "Statistics" and subsequent columns for each year selected.
# Run if HYDAT database has been downloaded (using tidyhydat::download_hydat())
if (file.exists(tidyhydat::hy_downloaded_db())) {
# Calculate long-term monthly statistics using data argument with defaults
flow_data <- tidyhydat::hy_daily_flows(station_number = "08NM116")
calc_longterm_monthly_stats(data = flow_data,
                            start_year = 1980)
# Calculate long-term monthly statistics using station_number argument with defaults
calc_longterm_monthly_stats(station_number = "08NM116",
                            start_year = 1980)
# Calculate long-term monthly statistics regardless if there is missing data for a given year
calc_longterm_monthly_stats(station_number = "08NM116",
                            ignore_missing = TRUE)
                    
# Calculate long-term monthly statistics and add custom stats for July-September
calc_longterm_monthly_stats(station_number = "08NM116",
                            start_year = 1980,
                            custom_months = 7:9,
                            custom_months_label = "Summer")                  
                            
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.