Learn R Programming

msm (version 0.5.2)

deltamethod: The delta method

Description

Delta method for approximating the standard error of a transformation $g(X)$ of a random variable $X = (x_1, x_2, \ldots)$, given estimates of the mean and covariance matrix of $X$.

Usage

deltamethod(g, mean, cov, ses=TRUE)

Arguments

g
A formula representing the transformation. The variables must be labelled x1, x2,... For example, ~ 1 / (x1 + x2)

If the transformation returns a vector, then a list of formulae representing ($g_1, g_2, \ldo

mean
The estimated mean of $X$
cov
The estimated covariance matrix of $X$
ses
If TRUE, then the standard errors of $g_1(X), g_2(X),\ldots$ are returned. Otherwise the covariance matrix of $g(X)$ is returned.

Value

  • A vector containing the standard errors of $g_1(X), g_2(X), \ldots$ or a matrix containing the covariance of $g(X)$.

concept

Delta method

Details

The delta method expands a differentiable function of a random variable about its mean, usually with a first-order Taylor approximation, and then takes the variance. For example, an approximation to the covariance matrix of $g(X)$ is given by $$Cov(g(X)) = g'(\mu) Cov(X) [g'(\mu)]^T$$

where $\mu$ is an estimate of the mean of $X$.

References

Oehlert, G. W. A note on the delta method. American Statistician 46(1), 1992

Examples

Run this code
## Simple linear regression, E(y) = alpha + beta x 
x <- 1:100
y <- rnorm(100, 4*x, 5)
toy.lm <- lm(y ~ x)
estmean <- coef(toy.lm)
estvar <- summary(toy.lm)$cov.unscaled

## Estimate of (1 / (alphahat + betahat))
1 / (estmean[1] + estmean[2])
## Approximate standard error
deltamethod (~ 1 / (x1 + x2), estmean, estvar)

Run the code above in your browser using DataLab