glm.control {stats}R Documentation

Auxiliary for Controlling GLM Fitting


Auxiliary function for glm fitting. Typically only used internally by, but may be used to construct a control argument to either function.


glm.control(epsilon = 1e-8, maxit = 25, trace = FALSE)



positive convergence tolerance \epsilon; the iterations converge when |dev - dev_{old}|/(|dev| + 0.1) < \epsilon.


integer giving the maximal number of IWLS iterations.


logical indicating if output should be produced for each iteration.


The control argument of glm is by default passed to the control argument of, which uses its elements as arguments to glm.control: the latter provides defaults and sanity checking.

If epsilon is small (less than 10^{-10}) it is also used as the tolerance for the detection of collinearity in the least squares solution.

When trace is true, calls to cat produce the output for each IWLS iteration. Hence, options(digits = *) can be used to increase the precision, see the example.


A list with components named as the arguments.


Hastie, T. J. and Pregibon, D. (1992) Generalized linear models. Chapter 6 of Statistical Models in S eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.

See Also, the fitting procedure used by glm.


### A variation on  example(glm) :

## Annette Dobson's example ...
counts <- c(18,17,15,20,10,20,25,13,12)
outcome <- gl(3,1,9)
treatment <- gl(3,3)
oo <- options(digits = 12) # to see more when tracing :
glm.D93X <- glm(counts ~ outcome + treatment, family = poisson(),
                trace = TRUE, epsilon = 1e-14)
coef(glm.D93X) # the last two are closer to 0 than in ?glm's  glm.D93

[Package stats version 4.3.0 Index]