Calculates annual n-day minimum and maximum values, and the day of year and date of occurrence of daily flow values from a daily streamflow data set. Calculates statistics from all values, unless specified. Returns a tibble with statistics.
calc_annual_peaks( data, dates = Date, values = Value, groups = STATION_NUMBER, station_number, roll_days = 1, roll_align = "right", water_year_start = 1, start_year, end_year, exclude_years, months = 1:12, 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 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. |
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 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. |
months | Numeric vector of months to include in analysis (e.g. |
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:
calendar or water year selected
annual minimum for selected n-day rolling mean, direction of mean specified by roll_align
day of year for selected annual minimum of n-day rolling mean
date (YYYY-MM-DD) for selected annual minimum of n-day rolling mean
annual maximum for selected n-day rolling mean, direction of mean specified by roll_align
day of year for selected annual maximum of n-day rolling mean
date (YYYY-MM-DD) for selected annual maximum of n-day rolling mean
annual 1-day mean minimum (roll_align = right)
day of year of annual 1-day mean minimum
date (YYYY-MM-DD) of annual 1-day mean minimum
annual 1-day mean maximum (roll_align = right)
day of year of annual 1-day mean maximum
date (YYYY-MM-DD) of annual 1-day mean maximum
# Run if HYDAT database has been downloaded (using tidyhydat::download_hydat()) if (file.exists(tidyhydat::hy_downloaded_db())) { # Calculate annual 1-day (default) peak flow data with # default alignment ('right') calc_annual_peaks(station_number = "08NM116") # Calculate custom 3-day peak flow data with 'center' alignment calc_annual_peaks(station_number = "08NM116", roll_days = 3, roll_align = "center") }#> Warning: One or more calculations included missing values and NA's were produced. Filter data for complete years or months, or use to ignore_missing = TRUE to ignore missing values.#> Warning: One or more calculations included missing values and NA's were produced. Filter data for complete years or months, or use to ignore_missing = TRUE to ignore missing values.#> # A tibble: 69 x 8 #> STATION_NUMBER Year Min_3_Day Min_3_Day_DoY Min_3_Day_Date Max_3_Day #> <chr> <dbl> <dbl> <dbl> <date> <dbl> #> 1 08NM116 1949 NA NA NA NA #> 2 08NM116 1950 NA NA NA NA #> 3 08NM116 1951 NA NA NA NA #> 4 08NM116 1952 NA NA NA NA #> 5 08NM116 1953 NA NA NA NA #> 6 08NM116 1954 NA NA NA NA #> 7 08NM116 1955 NA NA NA NA #> 8 08NM116 1956 NA NA NA NA #> 9 08NM116 1957 NA NA NA NA #> 10 08NM116 1958 NA NA NA NA #> # ... with 59 more rows, and 2 more variables: Max_3_Day_DoY <dbl>, #> # Max_3_Day_Date <date>