testGLMGamma
is used to check the validity of Gamma assumption for the response variable when
fitting generalized linear model. Common link functions in glm
can be used here.
testGLMGamma(
x,
y,
fit = NULL,
l = "log",
hessian = FALSE,
start.value = NULL,
control = NULL,
method = "cvm"
)
A list of three containing the following components:
Statistic: the value of goodness-of-fit statistic.
p-value: the approximate p-value for the goodness-of-fit test based on empirical distribution function. if method = 'cvm' or method = 'ad', it returns a numeric value for the statistic and p-value. If method = 'both', it returns a numeric vector with two elements and one for each statistic.
converged: logical to indicate if the IWLS algorithm have converged or not.
is either a numeric vector or a design matrix. In the design matrix, rows indicate observations and columns presents covariats.
is a vector of numeric values with the same number of observations or number of rows as x.
is an object of class glm
and its default value is NULL. If a fit of class glm
is provided,
the arguments x
, y
, and l
will be ignored. We recommend using glm2
function from
glm2
package since it provides better convergence while optimizing the likelihood to estimate
coefficients of the model by IWLS method. It is required to return design matrix by x
= TRUE
in
glm
or glm2
function. For more information on how to do this, refer to the help
documentation for the glm
or glm2
function.
a character vector indicating the link function that should be used for Gamma family. Some common
link functions for Gamma family are 'log' and 'inverse'. For more details see make.link
from stats
package in R.
logical. If TRUE
the Fisher information matrix is estimated by the observed Hessian Matrix based on
the sample. If FALSE
(the default value) the Fisher information matrix is estimated by the variance of the
observed score matrix.
a numeric value or vector. This is the same as start
argument in glm
or
glm2
. The value is a starting point in iteratively reweighted least squares (IRLS) algorithm for
estimating the MLE of coefficients in the model.
a list of parameters to control the fitting process in glm
or glm2
function.
For more details, see glm.control
.
a character string indicating which goodness-of-fit statistic is to be computed. The default value is 'cvm' for the Cramer-von-Mises statistic. Other options include 'ad' for the Anderson-Darling statistic, and 'both' to compute both cvm and ad.
set.seed(123)
n <- 50
p <- 5
x <- matrix( rnorm(n*p, mean = 10, sd = 0.1), nrow = n, ncol = p)
b <- runif(p)
e <- rgamma(n, shape = 3)
y <- exp(x %*% b) * e
testGLMGamma(x, y, l = 'log')
myfit <- glm(y ~ x, family = Gamma('log'), x = TRUE, y = TRUE)
testGLMGamma(fit = myfit)
Run the code above in your browser using DataLab