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 variability 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 and 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 Mission Creek near East Kelowna (08NM116) 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_5.csv in the ffaframework package.

library(ffaframework)

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

head(df)
#>   year  max
#> 1 1949 49.3
#> 2 1950 52.1
#> 3 1951 49.3
#> 4 1952 50.7
#> 5 1953 62.3
#> 6 1954 36.2

plot_ams_data(df$max, df$year, title = "Mission Creek near East Kelowna (08NM116)")

Conclusion

The MWMK and White tests find evidence of nonstationarity in the variability of the AMS. The runs test confirms 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.