Performes the Buishand U test for change-point detection of a normal variate.
bu.test(x, m = 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
a vector of class "numeric" or a time series object of class "ts"
numeric, number of Monte-Carlo replicates, defaults to 20000
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.
efp
sctest.efp
data(Nile)
(out <- bu.test(Nile))
plot(out)
data(PagesData)
bu.test(PagesData)
Run the code above in your browser using DataLab