# influence.measures {stats}

### Description

This suite of functions can be used to compute some of the regression (leave-one-out deletion) diagnostics for linear and generalized linear models discussed in Belsley, Kuh and Welsch (1980), Cook and Weisberg (1982), etc.

### Usage

influence.measures(model) rstandard(model, ...) ## S3 method for class 'lm': rstandard((model, infl = lm.influence(model, do.coef = FALSE), sd = sqrt(deviance(model)/df.residual(model)), ...)) ## S3 method for class 'glm': rstandard((model, infl = influence(model, do.coef = FALSE), type = c("deviance", "pearson"), ...) rstudent(model, ...)) ## S3 method for class 'lm': rstudent((model, infl = lm.influence(model, do.coef = FALSE), res = infl$wt.res, ...)) ## S3 method for class 'glm': rstudent((model, infl = influence(model, do.coef = FALSE), ...) dffits(model, infl = , res = ) dfbeta(model, ...)) ## S3 method for class 'lm': dfbeta((model, infl = lm.influence(model, do.coef = TRUE), ...) dfbetas(model, ...)) ## S3 method for class 'lm': dfbetas((model, infl = lm.influence(model, do.coef = TRUE), ...) covratio(model, infl = lm.influence(model, do.coef = FALSE), res = weighted.residuals(model)) cooks.distance(model, ...)) ## S3 method for class 'lm': cooks.distance((model, infl = lm.influence(model, do.coef = FALSE), res = weighted.residuals(model), sd = sqrt(deviance(model)/df.residual(model)), hat = infl$hat, ...)) ## S3 method for class 'glm': cooks.distance((model, infl = influence(model, do.coef = FALSE), res = infl$pear.res, dispersion = summary(model)$dispersion, hat = infl$hat, ...) hatvalues(model, ...)) ## S3 method for class 'lm': hatvalues((model, infl = lm.influence(model, do.coef = FALSE), ...) hat(x, intercept = TRUE))

### Arguments

- model
- an R object, typically returned by
`lm`

or`glm`

. - infl
- influence structure as returned by
`lm.influence`

or`influence`

(the latter only for the`glm`

method of`rstudent`

and`cooks.distance`

). - res
- (possibly weighted) residuals, with proper default.
- sd
- standard deviation to use, see default.
- dispersion
- dispersion (for
`glm`

objects) to use, see default. - hat
- hat values H[i,i], see default.
- type
- type of residuals for
`glm`

method for`rstandard.`

- x
- the X or design matrix.
- intercept
- should an intercept column be prepended to
`x`

? - ...
- further arguments passed to or from other methods.

### Details

The primary high-level function is `influence.measures`

which produces a class `"infl"`

object tabular display showing the DFBETAS for each model variable, DFFITS, covariance ratios, Cook's distances and the diagonal elements of the hat matrix. Cases which are influential with respect to any of these measures are marked with an asterisk.

The functions `dfbetas`

, `dffits`

, `covratio`

and `cooks.distance`

provide direct access to the corresponding diagnostic quantities. Functions `rstandard`

and `rstudent`

give the standardized and Studentized residuals respectively. (These re-normalize the residuals to have unit variance, using an overall and leave-one-out measure of the error variance respectively.)

Values for generalized linear models are approximations, as described in Williams (1987) (except that Cook's distances are scaled as F rather than as chi-square values). The approximations can be poor when some cases have large influence.

The optional `infl`

, `res`

and `sd`

arguments are there to encourage the use of these direct access functions, in situations where, e.g., the underlying basic influence measures (from `lm.influence`

or the generic `influence`

) are already available.

Note that cases with `weights == 0`

are *dropped* from all these functions, but that if a linear model has been fitted with `na.action = na.exclude`

, suitable values are filled in for the cases excluded during fitting.

The function `hat()`

exists mainly for S (version 2) compatibility; we recommend using `hatvalues()`

instead.

### References

Belsley, D. A., Kuh, E. and Welsch, R. E. (1980) *Regression Diagnostics*. New York: Wiley.

Cook, R. D. and Weisberg, S. (1982) *Residuals and Influence in Regression*. London: Chapman and Hall.

Williams, D. A. (1987) Generalized linear model diagnostics using the deviance and single case deletions. *Applied Statistics* **36**, 181--191.

Fox, J. (1997) *Applied Regression, Linear Models, and Related Methods*. Sage.

Fox, J. (2002) *An R and S-Plus Companion to Applied Regression*. Sage Publ.; http://www.socsci.mcmaster.ca/jfox/Books/Companion/.

### Note

For `hatvalues`

, `dfbeta`

, and `dfbetas`

, the method for linear models also works for generalized linear models.

### Examples

require(graphics) ## Analysis of the life-cycle savings data ## given in Belsley, Kuh and Welsch. lm.SR <- lm(sr ~ pop15 + pop75 + dpi + ddpi, data = LifeCycleSavings) inflm.SR <- influence.measures(lm.SR) which(apply(inflm.SR$is.inf, 1, any)) # which observations 'are' influential summary(inflm.SR) # only these inflm.SR # all plot(rstudent(lm.SR) ~ hatvalues(lm.SR)) # recommended by some ## The 'infl' argument is not needed, but avoids recomputation: rs <- rstandard(lm.SR) iflSR <- influence(lm.SR) identical(rs, rstandard(lm.SR, infl = iflSR)) ## to "see" the larger values: 1000 * round(dfbetas(lm.SR, infl = iflSR), 3) ## Huber's data [Atkinson 1985] xh <- c(-4:0, 10) yh <- c(2.48, .73, -.04, -1.44, -1.32, 0) summary(lmH <- lm(yh ~ xh)) (im <- influence.measures(lmH)) plot(xh,yh, main = "Huber's data: L.S. line and influential obs.") abline(lmH); points(xh[im$is.inf], yh[im$is.inf], pch = 20, col = 2) ## Irwin's data [Williams 1987] xi <- 1:5 yi <- c(0,2,14,19,30) # number of mice responding to dose xi mi <- rep(40, 5) # number of mice exposed summary(lmI <- glm(cbind(yi, mi -yi) ~ xi, family = binomial)) signif(cooks.distance(lmI), 3) # ~= Ci in Table 3, p.184 (imI <- influence.measures(lmI)) stopifnot(all.equal(imI$infmat[,"cook.d"], cooks.distance(lmI)))

Documentation reproduced from R 3.0.2. License: GPL-2.

## Comments

Several R core team members and John Fox, originally in his ‘car’ package.

Walter Disney 100 Years of Magic

I agree, Simple, but great and incredible. Information add insight. I love to read your article because of the many benefits that I can.s

options

hey, you have a very succsessfull article beacuse we are waituing since morning to you beacause i am a very big fan of your article .......ii always wantdddd to you just send me this type of articles thanks...

diy kitchen