hmctest: Harrison-McCabe test

View source: R/hmctest.R

hmctestR Documentation

Harrison-McCabe test


Harrison-McCabe test for heteroskedasticity.


hmctest(formula, point = 0.5, = NULL, simulate.p = TRUE, nsim = 1000,
  plot = FALSE, data = list())



a symbolic description for the model to be tested (or a fitted "lm" object).


numeric. If point is smaller than 1 it is interpreted as percentages of data, i.e. n*point is taken to be the (potential) breakpoint in the variances, if n is the number of observations in the model. If point is greater than 1 it is interpreted to be the index of the breakpoint.

Either a vector z or a formula with a single explanatory variable like ~ z. The observations in the model are ordered by the size of z. If set to NULL (the default) the observations are assumed to be ordered (e.g., a time series).


logical. If TRUE a p value will be assessed by simulation, otherwise the p value is NA.


integer. Determines how many runs are used to simulate the p value.


logical. If TRUE the test statistic for all possible breakpoints is plotted.


an optional data frame containing the variables in the model. By default the variables are taken from the environment which hmctest is called from.


The Harrison-McCabe test statistic is the fraction of the residual sum of squares that relates to the fraction of the data before the breakpoint. Under H_0 the test statistic should be close to the size of this fraction, e.g. in the default case close to 0.5. The null hypothesis is reject if the statistic is too small.

Examples can not only be found on this page, but also on the help pages of the data sets bondyield, currencysubstitution, growthofmoney, moneydemand, unemployment, wages.


A list with class "htest" containing the following components:


the value of the test statistic.


the simulated p-value of the test.


a character string indicating what type of test was performed.

a character string giving the name(s) of the data.


M.J. Harrison & B.P.M McCabe (1979), A Test for Heteroscedasticity based on Ordinary Least Squares Residuals. Journal of the American Statistical Association 74, 494–499

W. Krämer & H. Sonnberger (1986), The Linear Regression Model under Test. Heidelberg: Physica

See Also



## generate a regressor
x <- rep(c(-1,1), 50)
## generate heteroskedastic and homoskedastic disturbances
err1 <- c(rnorm(50, sd=1), rnorm(50, sd=2))
err2 <- rnorm(100)
## generate a linear relationship
y1 <- 1 + x + err1
y2 <- 1 + x + err2
## perform Harrison-McCabe test
hmctest(y1 ~ x)
hmctest(y2 ~ x)

lmtest documentation built on March 22, 2022, 1:06 a.m.