anova.lmm: Multivariate Tests For Linear Mixed Model

View source: R/anova.R

anova.lmmR Documentation

Multivariate Tests For Linear Mixed Model

Description

Simultaneous tests of linear combinations of the model paramaters using Wald tests or Likelihood Ratio Test (LRT).

Usage

## S3 method for class 'lmm'
anova(
  object,
  effects = NULL,
  robust = FALSE,
  rhs = NULL,
  df = !is.null(object$df),
  ci = TRUE,
  transform.sigma = NULL,
  transform.k = NULL,
  transform.rho = NULL,
  transform.names = TRUE,
  ...
)

Arguments

object

a lmm object. Only relevant for the anova function.

effects

[character or numeric matrix] Should the Wald test be computed for all variables ("all"), or only variables relative to the mean ("mean" or "fixed"), or only variables relative to the variance structure ("variance"), or only variables relative to the correlation structure ("correlation"). Can also be use to specify linear combinations of coefficients or a contrast matrix, similarly to the linfct argument of the multcomp::glht function.

robust

[logical] Should robust standard errors (aka sandwich estimator) be output instead of the model-based standard errors.

rhs

[numeric vector] the right hand side of the hypothesis. Only used when the argument effects is a matrix.

df

[logical] Should a F-distribution be used to model the distribution of the Wald statistic. Otherwise a chi-squared distribution is used.

ci

[logical] Should an estimate, standard error, confidence interval, and p-value be output for each hypothesis?

transform.sigma, transform.k, transform.rho, transform.names

are passed to the vcov method. See details section in coef.lmm.

...

Not used. For compatibility with the generic method.

Details

By default adjustment of confidence intervals and p-values for multiple comparisons is based on the distribution of the maximum-statistic. This is refered to as a single-step Dunnett multiple testing procedures in table II of Dmitrienko et al. (2013). It is performed using the multcomp package with the option test = adjusted("single-step") with equal degrees of freedom or by simulation using a Student's t copula with unequal degrees of freedom (more in the note of the details section of confint.Wald_lmm).

Value

A data.frame (LRT) or a list of containing the following elements (Wald):

  • multivariate: data.frame containing the multivariate Wald test. The column df.num refers to the degrees of freedom for the numerator (i.e. number of hypotheses) wherease the column df.denum refers to the degrees of freedom for the denominator (i.e. Satterthwaite approximation).

  • univariate: data.frame containing each univariate Wald test.

  • glht: used internally to call functions from the multcomp package.

  • object: list containing key information about the linear mixed model.

  • vcov: variance-covariance matrix associated to each parameter of interest (i.e. hypothesis).

  • iid: matrix containing the influence function relative to each parameter of interest (i.e. hypothesis).

  • args: list containing argument values from the function call.

References

Dmitrienko, A. and D'Agostino, R., Sr (2013), Traditional multiplicity adjustment methods in clinical trials. Statist. Med., 32: 5172-5218. https://doi.org/10.1002/sim.5990.

See Also

summary.Wald_lmm or confint.Wald_lmm for a summary of the results.
autoplot.Wald_lmm for a graphical display of the results.
rbind.Wald_lmm for combining result across models and adjust for multiple comparisons.

Examples

#### simulate data in the long format ####
set.seed(10)
dL <- sampleRem(100, n.times = 3, format = "long")

#### fit Linear Mixed Model ####
eUN.lmm <- lmm(Y ~ visit + X1 + X2 + X5,
               repetition = ~visit|id, structure = "UN", data = dL)

#### Multivariate Wald test ####
## F-tests
anova(eUN.lmm)
anova(eUN.lmm, effects = "all")
anova(eUN.lmm, robust = TRUE, df = FALSE)
summary(anova(eUN.lmm))

## user defined F-test
summary(anova(eUN.lmm, effects = c("X1=0","X2+X5=10")))
print(anova(eUN.lmm, effects = "mean_visit"), columns = add("null"))

## chi2-tests
anova(eUN.lmm, df = FALSE)


## with standard contrast
if(require(multcomp)){
amod <- lmm(breaks ~ tension, data = warpbreaks)
e.amod <- anova(amod, effect = mcp(tension = "Tukey"))
summary(e.amod)
}

#### Likelihood ratio test ####
eUN0.lmm <- lmm(Y ~ X1 + X2, repetition = ~visit|id, structure = "UN", data = dL)
anova(eUN.lmm, eUN0.lmm) 

eCS.lmm <- lmm(Y ~ X1 + X2 + X5, repetition = ~visit|id, structure = "CS", data = dL)
anova(eUN.lmm, eCS.lmm)

LMMstar documentation built on Nov. 9, 2023, 1:06 a.m.