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

hatvalues

Hat Values and Regression Deletion Diagnostics


Description

When complete, a suite of functions that can be used to compute some of the regression (leave-one-out deletion) diagnostics, for the VGLM class.

Usage

hatvalues(model, ...)
hatvaluesvlm(model, type = c("diagonal", "matrix", "centralBlocks"), ...)
hatplot(model, ...)
hatplot.vlm(model, multiplier = c(2, 3), lty = "dashed",
            xlab = "Observation", ylab = "Hat values", ylim = NULL, ...)
dfbetavlm(model, maxit.new = 1,
          trace.new = FALSE,
          smallno = 1.0e-8, ...)

Arguments

model

an R object, typically returned by vglm.

type

Character. The default is the first choice, which is a nM x nM matrix. If type = "matrix" then the entire hat matrix is returned. If type = "centralBlocks" then n central M x M block matrices, in matrix-band format.

multiplier

Numeric, the multiplier. The usual rule-of-thumb is that values greater than two or three times the average leverage (at least for the linear model) should be checked.

lty, xlab, ylab, ylim

Graphical parameters, see par etc. The default of ylim is c(0, max(hatvalues(model))) which means that if the horizontal dashed lines cannot be seen then there are no particularly influential observations.

maxit.new, trace.new, smallno

Having maxit.new = 1 will give a one IRLS step approximation from the ordinary solution (and no warnings!). Else having maxit.new = 10, say, should usually mean convergence will occur for all observations when they are removed one-at-a-time. Else having maxit.new = 2, say, should usually mean some lack of convergence will occur when observations are removed one-at-a-time. Setting trace.new = TRUE will produce some running output at each IRLS iteration and for each individual row of the model matrix. The argument smallno multiplies each value of the original prior weight (often unity); setting it identically to zero will result in an error, but setting a very small value effectively removes that observation.

...

further arguments, for example, graphical parameters for hatplot.vlm().

Details

The invocation hatvalues(vglmObject) should return a n x M matrix of the diagonal elements of the hat (projection) matrix of a vglm object. To do this, the QR decomposition of the object is retrieved or reconstructed, and then straightforward calculations are performed.

The invocation hatplot(vglmObject) should plot the diagonal of the hat matrix for each of the M linear/additive predictors. By default, two horizontal dashed lines are added; hat values higher than these ought to be checked.

Note

It is hoped, soon, that the full suite of functions described at influence.measures will be written for VGLMs. This will enable general regression deletion diagnostics to be available for the entire VGLM class.

Author(s)

T. W. Yee.

See Also

Examples

# Proportional odds model, p.179, in McCullagh and Nelder (1989)
pneumo <- transform(pneumo, let = log(exposure.time))
fit <- vglm(cbind(normal, mild, severe) ~ let, cumulative, data = pneumo)
hatvalues(fit)  # n x M matrix, with positive values
all.equal(sum(hatvalues(fit)), fit@rank)  # Should be TRUE
## Not run:  par(mfrow = c(1, 2))
hatplot(fit, ylim = c(0, 1), las = 1, col = "blue") 
## End(Not run)

VGAM

Vector Generalized Linear and Additive Models

v1.1-5
GPL-3
Authors
Thomas Yee [aut, cre], Cleve Moler [ctb] (author of several LINPACK routines)
Initial release
2021-01-13

We don't support your browser anymore

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