vignettes/trend-and-correlation.Rmd
trend-and-correlation.RmdThis vignette describes tests for serial correlation and monotonic trends, including seasonal Kendall tests and adjustments for serial dependence. It explains the test statistics, slope estimates, and assumptions used when analysing observations collected over time.
Related vignettes:
For planning a study to detect a linear trend, see linear trend test power.
Help topic: serialCorrelationTest.
Let
denote
observations from a stationary time series sampled at equispaced points
in time with normal (Gaussian) errors. The function
serialCorrelationTest tests the null hypothesis:
where denotes the true lag-1 autocorrelation (also called the lag-1 serial correlation coefficient). Actually, the null hypothesis is that the lag- autocorrelation is 0 for all values of greater than 0 (i.e., the time series is purely random).
In the case when the argument x is a linear model, the
function serialCorrelationTest tests the null hypothesis
(1) for the residuals.
The three possible alternative hypotheses are the upper one-sided
alternative (alternative="greater"):
the lower one-sided alternative
(alternative="less"):
and the two-sided alternative:
Testing the Null Hypothesis of No Lag-1
Autocorrelation
There are several possible methods for testing the null hypothesis (1)
versus any of the three alternatives (2)-(4). The function
serialCorrelationTest allows you to use one of three
possible tests:
Each of these tests is described below.
Test Based on Yule-Walker Estimate
(test="AR1.yw")
The Yule-Walker estimate of the lag-1 autocorrelation is given by:
where
is the estimate of the lag- autocovariance. (This estimator does not allow for missing values.)
Under the null hypothesis (1), the estimator of lag-1 correlation in Equation (5) is approximately distributed as a normal (Gaussian) random variable with mean 0 and variance given by:
(Box and Jenkins, 1976, pp.34-35). Thus, the null hypothesis (1) can be tested with the statistic
which is distributed approximately as a standard normal random variable under the null hypothesis that the lag-1 autocorrelation is 0.
Test Based on the MLE (test="AR1.mle")
The function serialCorrelationTest the R function
arima to compute the MLE of the lag-one autocorrelation and
the estimated variance of this estimator. As for the test based on the
Yule-Walker estimate, the z-statistic is computed as the estimated
lag-one autocorrelation divided by the square root of the estimated
variance.
Test Based on Rank von Neumann Ratio
(test="rank.von.Neumann")
The null distribution of the serial correlation coefficient may be badly
affected by departures from normality in the underlying process (Cox,
1966; Bartels, 1977). It is therefore a good idea to consider using a
nonparametric test for randomness if the normality of the underlying
process is in doubt (Bartels, 1982).
Wald and Wolfowitz (1943) introduced the rank serial correlation coefficient, which for lag-1 autocorrelation is simply the Yule-Walker estimate (Equation (5) above) with the actual observations replaced with their ranks.
von Neumann et al. (1941) introduced a test for randomness in the context of testing for trend in the mean of a process. Their statistic is given by:
which is the ratio of the square of successive differences to the usual sums of squared deviations from the mean. This statistic is bounded between 0 and 4, and for a purely random process is symmetric about 2. Small values of this statistic indicate possible positive autocorrelation, and large values of this statistics indicate possible negative autocorrelation. Durbin and Watson (1950, 1951, 1971) proposed using this statistic in the context of checking the independence of residuals from a linear regression model and provided tables for the distribution of this statistic. This statistic is therefore often called the “Durbin-Watson statistic” (Draper and Smith, 1998, p.181).
The rank version of the von Neumann ratio statistic is given by:
where denotes the rank of the ’th observation (Bartels, 1982). (This test statistic does not allow for missing values.) In the absence of ties, the denominator of this test statistic is equal to
The range of the test statistic is given by:
if n is even, with a negligible adjustment if n is odd (Bartels, 1982), so asymptotically the range is from 0 to 4, just as for the test statistic in Equation (9) above.
Bartels (1982) shows that asymptotically, the rank von Neumann ratio statistic is a linear transformation of the rank serial correlation coefficient, so any asymptotic results apply to both statistics.
For any fixed sample size , the exact distribution of the statistic in Equation (10) above can be computed by simply computing the value of for all possible permutations of the serial order of the ranks. Based on this exact distribution, Bartels (1982) presents a table of critical values for the numerator of the RVN statistic for sample sizes between 4 and 10.
Determining the exact distribution of
becomes impractical as the sample size increases. For values of n
between 10 and 100, Bartels (1982) approximated the distribution of
by a beta
distribution over the range 0 to 4 with shape parameters
shape1=
and
shape2=
and:
Bartels (1982) checked this approximation by simulating the distribution of for and and comparing the empirical quantiles at , , , , and with the approximated quantiles based on the beta distribution. He found that the quantiles agreed to 2 decimal places for eight of the 10 values, and differed by for the other two values.
Note: The definition of the beta distribution assumes the random variable ranges from 0 to 1. This definition can be generalized as follows. Suppose the random variable has a beta distribution over the range , with shape parameters and . Then the random variable defined as:
has the “standard beta distribution” as described in the help file for Beta (Johnson et al., 1995, p.210).
Bartels (1982) shows that asymptotically, has normal distribution with mean 2 and variance , but notes that a slightly better approximation is given by using a variance of .
To test the null hypothesis (1) when
test="rank.von.Neumann", the functionserialCorrelationTest does the following:
When ties are present in the observations and midranks are used for the tied observations, the distribution of the statistic based on the assumption of no ties is not applicable. If the number of ties is small, however, they may not grossly affect the assumed p-value.
When ties are present, the function
serialCorrelationTest issues a warning. When the sample
size is between 3 and 10, the p-value is computed based on rounding up
the computed value of
to the nearest possible value that could be observed in the case of no
ties.
Computing a Confidence Interval for the Lag-1
Autocorrelation
The function serialCorrelationTest computes an approximate
confidence interval for the lag-1 autocorrelation as follows:
where denotes the estimated standard deviation of the estimated of lag-1 autocorrelation and denotes the ’th quantile of the standard normal distribution.
When test="AR1.yw" or
test="rank.von.Neumann", the Yule-Walker estimate of lag-1
autocorrelation is used and the variance of the estimated lag-1
autocorrelation is approximately:
(Box and Jenkins, 1976, p.34), so
When test="AR1.mle", the MLE of the lag-1
autocorrelation is used, and its standard deviation is estimated with
the square root of the estimated variance returned by
arima.
Help topic: kendallTrendTest.
kendallTrendTest performs Kendall’s nonparametric test
for a monotonic trend, which is a special case of the test for
independence based on Kendall’s tau statistic (see
cor.test). The slope is estimated using the method of Theil
(1950) and Sen (1968). When ci.slope=TRUE, the confidence
interval for the slope is computed using Gilbert’s (1987) Modification
of the Theil/Sen Method.
Kendall’s test for a monotonic trend is a special case of the test for independence based on Kendall’s tau statistic. The first section below explains the general case of testing for independence. The second section explains the special case of testing for monotonic trend. The last section explains how a simple linear regression model is a special case of a monotonic trend and how the slope may be estimated.
The General Case of Testing for Independence
Definition of Kendall’s Tau
Let
and
denote two continuous random variables with some joint (bivariate)
distribution. Let
denote a set of
bivariate observations from this distribution, and assume these
bivariate observations are mutually independent. Kendall (1938, 1975)
proposed a test for the hypothesis that the
and
random variables are independent based on estimating the following
quantity:
The quantity in Equation (1) is called Kendall’s tau, although this term is more often applied to the estimate of (see Equation (2) below). If and are independent, then . Furthermore, for most distributions of interest, if then the random variables and are independent. (It can be shown that there exist some distributions for which and the random variables and are not independent; see Hollander and Wolfe (1999, p.364)).
Note that Kendall’s tau is similar to a correlation coefficient in that . If and always vary in the same direction, that is if always implies , then . If and always vary in the opposite direction, that is if always implies , then . If , this indicates and are positively associated. If , this indicates and are negatively associated.
Estimating Kendall’s Tau
The quantity in Equation (1) can be estimated by:
where
and
denotes the sign function:
(Hollander and Wolfe, 1999, Chapter 8; Conover, 1980, pp.256–260; Gilbert, 1987, Chapter 16; Helsel and Hirsch, 1992, pp.212–216; Gibbons et al., 2009, Chapter 11). The quantity defined in Equation (2) is called Kendall’s rank correlation coefficient or more often Kendall’s tau.
Note that the quantity defined in Equation (3) is equal to the number of concordant pairs minus the number of discordant pairs. Hollander and Wolfe (1999, p.364) use the notation instead of , and Conover (1980, p.257) uses the notation .
Testing the Null Hypothesis of Independence
The null hypothesis
,
can be tested using the statistic
defined in Equation (3) above. Tables of the distribution of
for small samples are given in Hollander and Wolfe (1999), Conover
(1980, pp.458–459), Gilbert (1987, p.272), Helsel and Hirsch (1992,
p.469), and Gibbons (2009, p.210). The function
kendallTrendTest uses the large sample approximation to the
distribution of
under the null hypothesis, which is given by:
where
Under the null hypothesis, the quantity defined in Equation (5) is approximately distributed as a standard normal random variable.
Both Kendall (1975) and Mann (1945) show that the normal approximation is excellent even for samples as small as , provided that the following continuity correction is used:
The function kendallTrendTest performs the usual
one-sample z-test using the statistic computed in Equation (8) or
Equation (5). The argument correct determines which
equation is used to compute the z-statistic. By default,
correct=TRUE so Equation (8) is used.
In the case of tied observations in either the observed ’s and/or observed ’s, the formula for the variance of given in Equation (7) must be modified as follows:
where is the number of tied groups in the observations, is the size of the ’th tied group in the observations, is the number of tied groups in the observations, and is the size of the ’th tied group in the observations. In the case of no ties in either the or observations, Equation (9) reduces to Equation (7).
The Special Case of Testing for Monotonic
Trend
Often in environmental sampling, observations are taken periodically
over time (Hirsch et al., 1982; van Belle and Hughes, 1984; Hirsch and
Slack, 1984). In this case, the random variables
can be thought of as representing the observations, and the variables
are no longer random but represent the time at which the
’th
observation was taken. If the observations are equally spaced over time,
then it is useful to make the simplification
for
.
This is in fact the default value of the argument x for the
function kendallTrendTest.
In the case where the ’s represent time and are all distinct, the test for independence between and is equivalent to testing for a monotonic trend in , and the test statistic simplifies to:
Also, the formula for the variance of in the presence of ties (under the null hypothesis ) simplifies to:
A form of the test statistic in Equation (10) was introduced by Mann (1945).
The Special Case of a Simple Linear Model: Estimating the
Slope
Consider the simple linear regression model
where denotes the intercept, denotes the slope, , and the ’s are assumed to be independent and identically distributed random variables from the same distribution. This is a special case of dependence between the ’s and the ’s, and the null hypothesis of a zero slope can be tested using Kendall’s test statistic (Equation (3) or (10) above) and the associated z-statistic (Equation (5) or (8) above) (Hollander and Wolfe, 1999, pp.415–420).
Theil (1950) proposed the following nonparametric estimator of the slope:
Note that the computation of the estimated slope involves computing
“two-point” estimated slopes (assuming no tied values), and taking the median of these N values.
Sen (1968) generalized this estimator to the case where there are possibly tied observations in the ’s. In this case, Sen simply ignores the two-point estimated slopes where the ’s are tied and computes the median based on the remaining two-point estimated slopes. That is, Sen’s estimator is given by:
(Hollander and Wolfe, 1999, pp.421–422).
Conover (1980, p. 267) suggests the following estimator for the intercept:
where and denote the sample medians of the ’s and ’s, respectively. With these estimators of slope and intercept, the estimated regression line passes through the point .
NOTE: The function kendallTrendTest
always returns estimates of slope and intercept assuming a linear model
(Equation (12)), while the p-value is based on Kendall’s tau, which is
testing for the broader alternative of any kind of dependence between
the
’s
and
’s.
Confidence Interval for the Slope
Theil (1950) and Sen (1968) proposed methods to compute a confidence
interval for the true slope, assuming the linear model of Equation (12)
(see Hollander and Wolfe, 1999, pp.421-422). Gilbert (1987, p.218)
illustrates a simpler method than the one given by Sen (1968) that is
based on a normal approximation. Gilbert’s (1987) method is an extension
of the one given in Hollander and Wolfe (1999, p.424) that allows for
ties and/or multiple observations per time period. This method is valid
for a sample size as small as
unless there are several tied observations.
Let denote the number of defined two-point estimated slopes that are used in Equation (15) above (if there are no tied values then ), and let denote the ordered slopes. For Gilbert’s (1987) method, a two-sided confidence interval for the true slope is given by:
where
is defined in Equations (7), (9), or (11), and denotes the ’th quantile of the standard normal distribution. One-sided confidence intervals may computed in a similar fashion.
Usually the quantities
and
will not be integers. Gilbert (1987, p.219) suggests interpolating
between adjacent values in this case, which is what the function
kendallTrendTest does.
Help topic: kendallSeasonalTrendTest.
Hirsch et al. (1982) introduced a modification of Kendall’s test for
trend (see kendallTrendTest)
that allows for seasonality in observations collected over time. They
call this test the seasonal Kendall test. Their test is
appropriate for testing for trend in each season when the trend is
always in the same direction across all seasons. van Belle and Hughes
(1984) introduced a heterogeneity test for trend which is appropriate
for testing for trend in any direction in any season. Hirsch and Slack
(1984) proposed an extension to the seasonal Kendall test that allows
for serial dependence in the observations. The function kendallSeasonalTrendTest
includes all of these tests, as well as an extension of the van
Belle-Hughes heterogeneity test to the case of serial dependence.
Testing for Trend Assuming Serial Independence
The Model
Assume observations are taken over two or more years, and assume a
single year can be divided into two or more seasons. Let
denote the number of seasons. Let
and
denote two continuous random variables with some joint (bivariate)
distribution (which may differ from season to season). Let
denote the number of bivariate observations taken in the
’th
season (over two or more years)
(),
so that
denote the bivariate observations from this distribution for season , assume these bivariate observations are mutually independent, and let
denote the value of Kendall’s tau for that season (see kendallTrendTest).
Also, assume all of the
observations are independent.
The function kendallSeasonalTrendTest assumes that the
values always denote the year in which the observation was taken. Note
that within any season, the
values need not be unique. That is, there may be more than one
observation within the same year within the same season. In this case,
the argument y must be a numeric vector, and you must
supply the additional arguments season and
year.
If there is only one observation per season per year (missing values
allowed), it is usually easiest to supply the argument y as
an
matrix or data frame, where
denotes the number of years. In this case
and
for and , so if denotes the matrix of observed ’s and denotes the matrix of the ’s, then
| . | |||||
| . | |||||
| . | |||||
| . | |||||
| . | |||||
| . | |||||
The null hypothesis is that within each season the and random variables are independent; that is, within each season there is no trend in the observations over time. This null hypothesis can be expressed as:
The Seasonal Kendall Test for Trend
Hirsch et al.’s (1982) extension of Kendall’s tau statistic to test the
null hypothesis (6) is based on simply summing together the Kendall
-statistics
for each season and computing the following statistic:
or, using the correction for continuity,
where
and
denotes the sign function:
Note that the quantity in Equation (10) is simply the Kendall
-statistic
for season
()
(see Equation (3) in the section on kendallTrendTest).
For each season, if the predictor variables (the ’s) are strictly increasing (e.g., Equation (3) above), then Equation (10) simplifies to
Under the null hypothesis (6), the quantity defined in Equation (7) or (8) is approximately distributed as a standard normal random variable.
Note that there may be missing values in the observations, so let denote the number of pairs without missing values for season .
The statistic in Equation (9) has mean and variance given by:
Since all the observations are assumed to be mutually independent,
Furthermore, under the null hypothesis (6),
and, in the case of no tied observations,
for
(see equation (7) in the section on kendallTrendTest).
In the case of tied observations,
where
is the number of tied groups in the
observations for season
,
is the size of the
’th
tied group in the
observations for season
,
is the number of tied groups in the
observations for season
,
and
is the size of the
’th
tied group in the
observations for season
(see Equation (9) in the section on kendallTrendTest).
Estimating
,
Slope, and Intercept
The function kendall.SeasonalTrendTest returns estimated
values of Kendall’s
,
the slope, and the intercept for each season, as well as a single
estimate for each of these three quantities combined over all seasons.
The overall estimate of
is the weighted average of the p seasonal
’s:
where
(see Equation (2) in the section on kendallTrendTest).
We can compute the estimated slope for season as:
for . The overall estimate of slope, however, is not the median of these estimates of slope; instead, following Hirsch et al. (1982, p.117), the overall estimate of slope is the median of all two-point slopes computed within each season:
(see Equation (15) in the section on kendallTrendTest).
The overall estimate of intercept is the median of the seasonal estimates of intercept:
where
and
and
denote the sample medians of the
’s
and
’s,
respectively, for season
(see Equation (16) in the section on kendallTrendTest).
Confidence Interval for the Slope
Gilbert (1987, p.227-228) extends his method of computing a confidence
interval for the slope to the case of seasonal observations. Let
denote the number of defined two-point estimated slopes that are used in
Equation (22) above and let
denote the ordered slopes. For Gilbert’s (1987) method, a two-sided confidence interval for the true over-all slope across all seasons is given by:
where
is defined in Equation (14), and denotes the ’th quantile of the standard normal distribution. One-sided confidence intervals may computed in a similar fashion.
Usually the quantities
and
will not be integers. Gilbert (1987, p.219) suggests interpolating
between adjacent values in this case, which is what the function
kendallSeasonalTrendTest does.
The Van Belle-Hughes Heterogeneity Test for Trend
The seasonal Kendall test described above is appropriate for testing the
null hypothesis (6) against the alternative hypothesis of a trend in at
least one season. All of the trends in each season should be in the same
direction.
The seasonal Kendall test is not appropriate for testing for trend when there are trends in a positive direction in one or more seasons and also negative trends in one or more seasons. For example, for the following set of observations, the seasonal Kendall statistic is 0 with an associated two-sided p-value of 1, even though there is clearly a positive trend in season 1 and a negative trend in season 2.
| Year | Season 1 | Season 2 |
| 1 | 5 | 8 |
| 2 | 6 | 7 |
| 3 | 7 | 6 |
| 4 | 8 | 5 |
Van Belle and Hughes (1984) suggest using the following statistic to test for heterogeneity in trend prior to applying the seasonal Kendall test:
where
Under the null hypothesis (6), the statistic defined in Equation (29)
is approximately distributed as a
chi-square random variable with
degrees of freedom. Note that the continuity correction is not used to
compute the
’s
defined in Equation (30) since using it results in an unacceptably
conservative test (van Belle and Hughes, 1984, p.132). Van Belle and
Hughes (1984) actually call the statistic in (29) a homogeneous
chi-square statistic. Here it is called a heterogeneous chi-square
statistic after the alternative hypothesis it is meant to test.
Van Belle and Hughes (1984) imply that the heterogeneity statistic defined in Equation (29) may be used to test the null hypothesis:
where is some arbitrary number between -1 and 1. For this case, however, the distribution of the test statistic in Equation (29) is unknown since it depends on the unknown value of (Equations (16)-(18) above assume and are not correct if ). The heterogeneity chi-square statistic of Equation (29) may be assumed to be approximately distributed as chi-square with degrees of freedom under the null hypothesis (32), but further study is needed to determine how well this approximation works.
Testing for Trend Assuming Serial Dependence
The Model
Assume the same model as for the case of serial independence, except now
the observed
’s
are not assumed to be independent of one another, but are allowed to be
serially correlated over time. Furthermore, assume one observation per
season per year (Equations (2)-(5) above).
The Seasonal Kendall Test for Trend Modified for Serial
Dependence
Hirsch and Slack (1984) introduced a modification of the seasonal
Kendall test that is robust against serial dependence (in terms of Type
I error) except when the observations have a very strong long-term
persistence (very large autocorrelation) or when the sample sizes are
small (e.g., 5 years of monthly data). This modification is based on a
multivariate test introduced by Dietz and Killeen (1981).
In the case of serial dependence, Equation (15) is no longer true, so an estimate of the correct value of must be used to compute Var(S’) in Equation (14). Let denote the matrix of ranks for the observations (Equation (4) above), where the ’s are ranked within season:
| . | |||||
| . | |||||
| . | |||||
where
the function is defined in Equation (11) above, and as before denotes the number of pairs without missing values for season . Note that by this definition, missing values are assigned the mid-rank of the non-missing values.
Hirsch and Slack (1984) suggest using the following formula, given by Dietz and Killeen (1981), in the case where there are no missing values:
where
Note that the quantity defined in Equation (36) is Kendall’s tau for season vs. season .
For the case of missing values, Hirsch and Slack (1984) derive the following modification of Equation (35):
Technically, the estimates in Equations (35) and (37) are not correct
estimators of covariance, and Equations (17) and (18) are not correct
estimators of variance, because the model Dietz and Killeen (1981) use
assumes that observations within the rows of
(Equation (4) above) may be correlated, but observations between rows
are independent. Serial dependence induces correlation between all of
the
’s.
In most cases, however, the serial dependence shows an exponential decay
in correlation across time and so these estimates work fairly well (see
more discussion in the background discussion in the kendallSeasonalTrendTest
help page).
Estimates and Confidence Intervals
The seasonal and over-all estimates of
,
slope, and intercept are computed using the same methods as in the case
of serial independence. Also, the method for computing the confidence
interval for the slope is the same as in the case of serial
independence. Note that the serial dependence is accounted for in the
term
in Equation (28).
The Van Belle-Hughes Heterogeneity Test for Trend Modified for
Serial Dependence
Like its counterpart in the case of serial independence, the seasonal
Kendall test modified for serial dependence described above is
appropriate for testing the null hypothesis (6) against the alternative
hypothesis of a trend in at least one season. All of the trends in each
season should be in the same direction.
The modified seasonal Kendall test is not appropriate for testing for trend when there are trends in a positive direction in one or more seasons and also negative trends in one or more seasons. This section describes a modification of the van Belle-Hughes heterogeneity test for trend in the presence of serial dependence.
Let denote the vector of Kendall -statistics for each season:
| . | ||
| . | ||
| . | ||
The distribution of is approximately multivariate normal with
| . | ||
| . | ||
| . | ||
| . | |||||
| . | |||||
| . | |||||
where
Define the matrix as
| . | |||||
| . | |||||
| . | |||||
Then the vector of the seasonal estimates of can be written as:
| . | . | |||
| . | . | |||
| . | . | |||
so the distribution of the vector in Equation (43) is approximately multivariate normal with
| . | |||||
| . | |||||
| . | |||||
where denotes the transpose operator. Let denote the contrast matrix
where denotes the identity matrix. That is,
| . | . | ||||
| . | . | ||||
| . | . | ||||
Then the null hypothesis (32) is equivalent to the null hypothesis:
Based on theory for samples from a multivariate normal distribution (Johnson and Wichern, 2007), under the null hypothesis (47) the quantity
has approximately a chi-square distribution with degrees of freedom for “large” values of seasonal sample sizes, where
The estimate of in Equation (49) can be computed using the same formulas that are used for the modified seasonal Kendall test (i.e., Equation (35) or (37) for the off-diagonal elements and Equation (17) or (18) for the diagonal elements). As previously noted, the formulas for the variances are actually only valid if and there is no correlation between the rows of . The same is true of the formulas for the covariances. More work is needed to determine the goodness of the chi-square approximation for the test statistic in (48). The pseudo-heterogeneity test statistic of Equation (48), however, should provide some guidance as to whether the null hypothesis (32) (or equivalently (47)) appears to be true.