Learn R Programming

wq (version 0.4.8)

seaKen: Seasonal and Regional Kendall trend test

Description

Calculates the Seasonal or Regional Kendall test of trend significance, including an estimate of the Sen slope.

Usage

seaKen(x, plot = FALSE, type = c("slope", "relative"), order = FALSE, pval = .05, mval = .5, pchs = c(19, 21), ...)

Arguments

x
A numeric vector, matrix or data frame made up of seasonal time series
plot
Should the trends be plotted when x is a matrix or data frame?
type
Type of trend to be plotted, actual or relative to series median
order
Should the plotted trends be ordered by size?
pval
p-value for significance
mval
Minimum fraction of seasons needed with non-missing slope estimates
pchs
Plot symbols for significant and not significant trend estimates, respectively
...
Other arguments to pass to plotting function

Value

A list of the following if x is a vector: seaKen returns a list with the following members:
sen.slope
Sen slope
sen.slope.pct
Sen slope as percent of mean
p.value
significance of slope
miss
for each season, the fraction missing of slopes connecting first and last 20% of the years
or a matrix with corresponding columns if x is a matrix or data frame.

Details

The Seasonal Kendall test (Hirsch et al. 1982) is based on the Mann-Kendall tests for the individual seasons (see mannKen for additional details). p-values provided here are not corrected for serial correlation among seasons.

If plot = TRUE, then either the Sen slope in units per year (type = "slope") or the relative slope in fraction per year (type = "relative") is plotted. The relative slope is defined identically to the Sen slope except that each slope is divided by the first of the two values that describe the slope. Plotting the relative slope is useful when the variables in x are always positive and have different units.

The plot symbols indicate, respectively, that the trend is statistically significant or not. The plot can be customized by passing any arguments used by dotchart such as xlab, as well as graphical parameters described in par.

If mval or more of the seasonal slope estimates are missing, then that trend is considered to be missing. The seasonal slope estimate (mannKen), in turn, is missing if half or more of the possible comparisons between the first and last 20% of the years are missing.

The function can be used in conjunction with mts2ts to calculate a Regional Kendall test of significance for annualized data, along with a regional estimate of trend (Helsel and Frans 2006). See the examples below.

References

Helsel, D.R. and Frans, L. (2006) Regional Kendall test for trend. Environmental Science and Technology 40(13), 4066-4073.

Hirsch, R.M., Slack, J.R., and Smith, R.A. (1982) Techniques of trend analysis for monthly water quality data. Water Resources Research 18, 107-121.

See Also

mannKen, mts2ts, trendHomog

Examples

Run this code
# Seasonal Kendall test:
chl <- sfbayChla # monthly chlorophyll at 16 stations in San Francisco Bay
seaKen(sfbayChla[, 's27']) # results for a single series at station 27
seaKen(sfbayChla) # results for all stations
seaKen(sfbayChla, plot=TRUE, type="relative", order=TRUE)

# Regional Kendall test:
# Use mts2ts to change 16 series into a single series with 16 "seasons"
seaKen(mts2ts(chl))  # too many missing data
seaKen(mts2ts(chl, seas = 2:4)) # better when just Feb-Apr, spring bloom period,
                                # but last 4 stations still missing too much.
seaKen(mts2ts(chl[, 1:12], 2:4)) # more reliable result

Run the code above in your browser using DataLab