Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

calcVarPart-method

Compute variance statistics


Description

For linear model, variance fractions are computed based on the sum of squares explained by each component. For the linear mixed mode, the variance fractions are computed by variance component estimates for random effects and sum of squares for fixed effects.

For a generalized linear model, the variance fraction also includes the contribution of the link function so that fractions are reported on the linear (i.e. link) scale rather than the observed (i.e. response) scale. For linear regression with an identity link, fractions are the same on both scales. But for logit or probit links, the fractions are not well defined on the observed scale due to the transformation imposed by the link function.

The variance implied by the link function is the variance of the corresponding distribution: logit -> logistic distribution -> variance is pi^2/3 probit -> standard normal distribution -> variance is 1

Reviewed by Nakagawa and Schielzeth. 2012. A general and simple method for obtaining R2 from generalized linear mixed-effects models. https://doi.org/10.1111/j.2041-210x.2012.00261.x

Proposed by McKelvey and Zavoina. A statistical model for the analysis of ordinal level dependent variables. The Journal of Mathematical Sociology 4(1) 103-120 https://doi.org/10.1080/0022250X.1975.9989847

Also see DeMaris. Explained Variance in Logistic Regression: A Monte Carlo Study of Proposed Measures. Sociological Methods & Research 2002 https://doi.org/10.1177/0049124102031001002

We note that Nagelkerke's pseudo R^2 evaluates the variance explained by the full model. Instead, a variance partitioning approach evaluates the variance explained by each term in the model, so that the sum of each systematic plus random term sums to 1 (Hoffman and Schadt, 2016, Nakagawa and Schielzeth, 2012).

Usage

calcVarPart(fit, showWarnings = TRUE, ...)

## S4 method for signature 'lm'
calcVarPart(fit, showWarnings = TRUE, ...)

## S4 method for signature 'lmerMod'
calcVarPart(fit, showWarnings = TRUE, ...)

## S4 method for signature 'glm'
calcVarPart(fit, showWarnings = TRUE, ...)

Arguments

fit

model fit from lm() or lmer()

showWarnings

show warnings about model fit (default TRUE)

...

additional arguments (not currently used)

Details

Compute fraction of variation attributable to each variable in regression model. Also interpretable as the intra-class correlation after correcting for all other variables in the model.

Value

fraction of variance explained / ICC for each variable in the linear model

Examples

library(lme4)
data(varPartData)

# Linear mixed model
fit <- lmer( geneExpr[1,] ~ (1|Tissue) + Age, info)
calcVarPart( fit )

# Linear model
# Note that the two models produce slightly different results
# This is expected: they are different statistical estimates 
# of the same underlying value
fit <- lm( geneExpr[1,] ~ Tissue + Age, info)
calcVarPart( fit )

variancePartition

Quantify and interpret divers of variation in multilevel gene expression experiments

v1.20.0
GPL (>= 2)
Authors
Gabriel E. Hoffman
Initial release
2020-10-26

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.