glh.test {gmodels} | R Documentation |
Test a General Linear Hypothesis for a Regression Model
Description
Test, print, or summarize a general linear hypothesis for a regression model
Usage
glh.test(reg, cm, d = rep(0, nrow(cm)))
Arguments
reg |
Regression model |
cm |
contrast matrix |
d |
vector |
Details
Test the general linear hypothesis C \hat{\beta} = d
for the regression model reg
.
The test statistic is obtained from the formula:
f = \frac{(C \hat{\beta} - d)' ( C (X'X)^{-1} C' ) (C \hat{\beta} - d) / r }{
SSE / (n-p) }
where
-
r
is the number of contrasts contained inC
, and -
n-p
is the model degrees of freedom.
Under the null hypothesis, f
will follow a F-distribution with r
and n-p
degrees of freedom
Value
Object of class c("glh.test","htest")
with elements:
call |
Function call that created the object |
statistic |
F statistic |
parameter |
vector containing the numerator (r) and denominator (n-p) degrees of freedom |
p.value |
p-value |
estimate |
computed estimate for each row of |
null.value |
d |
method |
description of the method |
data.name |
name of the model given for |
matrix |
matrix specifying the general linear hypotheis ( |
Note
When using treatment contrasts (the default) the first level of the factors are subsumed into the intercept term. The estimated model coefficients are then contrasts versus the first level. This should be taken into account when forming contrast matrixes, particularly when computing contrasts that include 'baseline' level of factors.
See the comparison with fit.contrast
in the examples below.
Author(s)
Gregory R. Warnes greg@warnes.net
References
R.H. Myers, Classical and Modern Regression with Applications, 2nd Ed, 1990, p. 105
See Also
fit.contrast()
, estimable()
, stats::contrasts()
Examples
# fit a simple model
y <- rnorm(100)
x <- cut(rnorm(100, mean=y, sd=0.25),c(-4,-1.5,0,1.5,4))
reg <- lm(y ~ x)
summary(reg)
# test both group 1 = group 2 and group 3 = group 4
# *Note the 0 in the column for the intercept term*
C <- rbind( c(0,-1,0,0), c(0,0,-1,1) )
ret <- glh.test(reg, C)
ret # same as 'print(ret) '
summary(ret)
# To compute a contrast between the first and second level of the factor
# 'x' using 'fit.contrast' gives:
fit.contrast( reg, x,c(1,-1,0,0) )
# To test this same contrast using 'glh.test', use a contrast matrix
# with a zero coefficient for the intercept term. See the Note section,
# above, for an explanation.
C <- rbind( c(0,-1,0,0) )
glh.test( reg, C )