Performes the Buishand U test for change-point detection of a normal variate.
bu.test(x, m = 20000)
a vector of class "numeric" or a time series object of class "ts"
numeric, number of Monte-Carlo replicates, defaults to 20000
A list with class "htest" and "cptest"
character string that denotes the input data
the p-value
the test statistic
the null hypothesis
the time of the probable change point
the alternative hypothesis
character string that denotes the test
numeric vector of Sk for plotting
Let \(X\) denote a normal random variate, then the following model with a single shift (change-point) can be proposed:
$$ x_i = \left\{ \begin{array}{lcl} \mu + \epsilon_i, & \qquad & i = 1, \ldots, m \\ \mu + \Delta + \epsilon_i & \qquad & i = m + 1, \ldots, n \\ \end{array} \right.$$
with \(\epsilon \approx N(0,\sigma)\). The null hypothesis \(\Delta = 0\) is tested against the alternative \(\Delta \ne 0\).
In the Buishand U test, the rescaled adjusted partial sums are calculated as
$$S_k = \sum_{i=1}^k \left(x_i - \bar{x}\right) \qquad (1 \le i \le n)$$
The sample standard deviation is $$ D_x = \sqrt{n^{-1} \sum_{i=1}^n \left(x_i - \bar{x}\right)}$$
The test statistic is calculated as: $$U = \left[n \left(n + 1 \right) \right]^{-1} \sum_{k=1}^{n-1} \left(S_k / D_x \right)^2 $$.
The p.value
is estimated with a Monte Carlo simulation
using m
replicates.
Critical values based on \(m = 19999\) Monte Carlo simulations are tabulated for \(U\) by Buishand (1982, 1984).
T. A. Buishand (1982), Some Methods for Testing the Homogeneity of Rainfall Records, Journal of Hydrology 58, 11--27.
T. A. Buishand (1984), Tests for Detecting a Shift in the Mean of Hydrological Time Series, Journal of Hydrology 73, 51--69.
# NOT RUN {
data(Nile)
(out <- bu.test(Nile))
plot(out)
data(PagesData)
bu.test(PagesData)
# }
Run the code above in your browser using DataLab