grm: Graded Response Model - Polytomous IRT

grmR Documentation

Graded Response Model - Polytomous IRT

Description

Fits the Graded Response model for ordinal polytomous data, under the Item Response Theory approach.

Usage

grm(data, constrained = FALSE, IRT.param = TRUE, Hessian = FALSE, 
    start.val = NULL, na.action = NULL, control = list())

Arguments

data

a data.frame (that will be converted to a numeric matrix using data.matrix()) or a numeric matrix of manifest variables.

constrained

logical; if TRUE the model with equal discrimination parameters across items is fitted. See Examples for more info.

IRT.param

logical; if TRUE then the coefficients' estimates are reported under the usual IRT parameterization. See Details for more info.

Hessian

logical; if TRUE the Hessian matrix is computed.

start.val

a list of starting values or the character string "random". If a list, each one of its elements corresponds to each item and should contain a numeric vector with initial values for the extremity parameters and discrimination parameter; even if constrained = TRUE the discrimination parameter should be provided for all the items. If "random" random starting values are computed.

na.action

the na.action to be used on data; default NULL the model uses the available cases, i.e., it takes into account the observed part of sample units with missing values (valid under MAR mechanisms if the model is correctly specified)..

control

a list of control values,

iter.qN

the number of quasi-Newton iterations. Default 150.

GHk

the number of Gauss-Hermite quadrature points. Default 21.

method

the optimization method to be used in optim(). Default "BFGS".

verbose

logical; if TRUE info about the optimization procedure are printed.

digits.abbrv

numeric value indicating the number of digits used in abbreviating the Item's names. Default 6.

Details

The Graded Response Model is a type of polytomous IRT model, specifically designed for ordinal manifest variables. This model was first discussed by Samejima (1969) and it is mainly used in cases where the assumption of ordinal levels of response options is plausible.

The model is defined as follows

logit(γ_ik) = beta_i z - beta_ik,

where γ_{ik} denotes the cumulative probability of a response in category kth or lower to the ith item, given the latent ability z. If constrained = TRUE it is assumed that β_i = β for all i.

If IRT.param = TRUE, then the parameters estimates are reported under the usual IRT parameterization, i.e.,

logit (γ_ik) = beta_i (z - beta_ik^*),

where beta_ik^* = beta_ik / beta_i.

The fit of the model is based on approximate marginal Maximum Likelihood, using the Gauss-Hermite quadrature rule for the approximation of the required integrals.

Value

An object of class grm with components,

coefficients

a named list with components the parameter values at convergence for each item. These are always the estimates of beta_ik, beta_i parameters, even if IRT.param = TRUE.

log.Lik

the log-likelihood value at convergence.

convergence

the convergence identifier returned by optim().

hessian

the approximate Hessian matrix at convergence returned by optim(); returned only if Hessian = TRUE.

counts

the number of function and gradient evaluations used by the quasi-Newton algorithm.

patterns

a list with two components: (i) X: a numeric matrix that contains the observed response patterns, and (ii) obs: a numeric vector that contains the observed frequencies for each observed response pattern.

GH

a list with two components used in the Gauss-Hermite rule: (i) Z: a numeric matrix that contains the abscissas, and (ii) GHw: a numeric vector that contains the corresponding weights.

max.sc

the maximum absolute value of the score vector at convergence.

constrained

the value of the constrained argument.

IRT.param

the value of the IRT.param argument.

X

a copy of the response data matrix.

control

the values used in the control argument.

na.action

the value of the na.action argument.

call

the matched call.

Warning

In case the Hessian matrix at convergence is not positive definite try to re-fit the model, using start.val = "random".

Note

grm() returns the parameter estimates such that the discrimination parameter for the first item beta_1 is positive.

When the coefficients' estimates are reported under the usual IRT parameterization (i.e., IRT.param = TRUE), their standard errors are calculated using the Delta method.

grm() can also handle binary items, which should be coded as ‘1, 2’ instead of ‘0, 1’.

Some parts of the code used for the calculation of the log-likelihood and the score vector have been based on polr() from package MASS.

Author(s)

Dimitris Rizopoulos d.rizopoulos@erasmusmc.nl

References

Baker, F. and Kim, S-H. (2004) Item Response Theory, 2nd ed. New York: Marcel Dekker.

Samejima, F. (1969). Estimation of latent ability using a response pattern of graded scores. Psychometrika Monograph Supplement, 34, 100–114.

Rizopoulos, D. (2006) ltm: An R package for latent variable modelling and item response theory analyses. Journal of Statistical Software, 17(5), 1–25. URL doi: 10.18637/jss.v017.i05

See Also

coef.grm, fitted.grm, summary.grm, anova.grm, plot.grm, vcov.grm, margins, factor.scores

Examples


## The Graded Response model for the Science data:
grm(Science[c(1,3,4,7)])

## The Graded Response model for the Science data,
## assuming equal discrimination parameters across items:
grm(Science[c(1,3,4,7)], constrained = TRUE)

## The Graded Response model for the Environment data
grm(Environment)


ltm documentation built on March 18, 2022, 6:36 p.m.