Learn R Programming

hglm (version 2.2-1)

lrt: Likelihood-ratio test for variance components in hglm

Description

Likelihood-ratio test for the estimated variance components (or other dipersion parameters) in hglm.

Usage

lrt(hglm.obj1, hglm.obj2 = NULL)

Arguments

hglm.obj1

a fitted hglm object.

hglm.obj2

optional, another fitted hglm object to be tested against hglm.obj1.

Value

Printout summary of the likelihood-ratio test results. Test statistic, p-value, etc. are returned.

Details

When hglm.obj2 = NULL, all the random effects variance components in hglm.obj1 are tested against the null model with only fixed effects. The degree of freedom is determined by comparing the number of random effects terms in hglm.obj1 and hglm.obj2 or the null fixed-effects-only model. Note that the likelihood- ratio test statistic for variance estimates, which are bounded above zero, follows a 50:50 mixture distribution of chi-square with 0 and 1 degree of freedom (Self and Liang 1987 JASA).

References

Self, S. G., & Liang, K.-Y. (1987). Asymptotic Properties of Maximum Likelihood Estimators and Likelihood Ratio Tests Under Nonstandard Conditions. Journal of the American Statistical Association, 82(398), 605-610.

Examples

Run this code
# NOT RUN {
require(hglm)

# }
# NOT RUN {
set.seed(911)
x1 <- rnorm(100)
x2 <- rnorm(100)
x3 <- rnorm(100)
z1 <- factor(rep(LETTERS[1:10], rep(10, 10)))
z2 <- factor(rep(letters[1:5], rep(20, 5)))
Z1 <- model.matrix(~ 0 + z1)
Z2 <- model.matrix(~ 0 + z2)
u1 <- rnorm(10, 0, sqrt(2))
u2 <- rnorm(5, 0, sqrt(3))
y <- 1 + 2*x1 + 3*x2 + Z1%*%u1 + Z2%*%u2 + rnorm(100, 0, sqrt(exp(x3)))
dd <- data.frame(x1 = x1, x2 = x2, x3 = x3, z1 = z1, z2 = z2, y = y)

m20 <- hglm(X = cbind(rep(1, 100), x1, x2), y = y, Z = Z1, 
            calc.like = TRUE)

lrt(m20)
         
m21 <- hglm(X = cbind(rep(1, 100), x1, x2), y = y, Z = cbind(Z1, Z2), 
             RandC = c(10, 5), calc.like = TRUE)

lrt(m20, m21)

# }

Run the code above in your browser using DataLab