Many factors can produce nonstationarity in annual maximum series (AMS) data, including changes in climate, land use/cover, and water management. This vignette demonstrates how to use the ffaframework to check for evidence of nonstationarity in the mean of a time series.

List of Tests

Mean Trend Tests

Function Purpose
eda_mk_test Tests for a monotonic trend (Mann-Kendall test).
eda_bbmk_test Tests for a monotonic trend under serial correlation (block-bootstrap MK test).

Stationarity Tests

Function Purpose
eda_spearman_test Tests for serial correlation (Spearman test).
eda_kpss_test Tests for a stochastic trend (KPSS test).
eda_pp_test Tests for a deterministic trend (Phillips-Perron test).

Variability Trend Tests

Function Purpose
MW-MK Test Tests for a trend in the variability (moving-window MK test)
eda_white_test Tests for time-dependence in the variability (White test).

Trend Estimation (Mean & Variability)

Function Purpose
eda_sens_trend Estimates slope and intercept of a linear trend (Sen’s slope estimator).
eda_runs_test Evaluates residuals’ structure under linear model assumptions (Wald-Wolfowitz runs test).

Case Study

This vignette will explore data from the Bow River at Banff (05BB001) hydrological monitoring station. The remoteness of this station means that trends annual maxima are caused by changes in climate as opposed to changes in land use or cover. Data for this station is provided as Application_3.1.csv in the ffaframework package.

library(ffaframework)

csv_path <- system.file("extdata", "Application_3.1.csv", package = "ffaframework")
df <- read.csv(csv_path, comment.char = "#")
df <- subset(df, !is.na(max)) # Remove missing values

head(df)
#>    year max
#> 10 1909 314
#> 11 1910 230
#> 12 1911 264
#> 13 1912 174
#> 14 1913 232
#> 15 1914 214

plot_ams_data(df$max, df$year, title = "Bow River at Banff (05BB001)")

Conclusion

The Mann-Kendall test identified evidence of nonstationarity in the mean of the AMS. The Spearman test did not find evidence of serial correlation, validating the results of the Mann-Kendall test. The runs test found that a linear model is suitable for the nonstationarity. Flood frequency analysis of this dataset requires a time-dependent probability model.

Recommendation: Use NS-FFA.