R: Extract Person Parameters of Item Response Models

personpar {psychotools} | R Documentation

## Extract Person Parameters of Item Response Models

### Description

A class and generic function for representing and estimating the person parameters of a given item response model.

### Usage

    personpar(object, ...)
    ## S3 method for class 'raschmodel'
    personpar(object, ref = NULL, vcov = TRUE,
      interval = NULL, tol = 1e-8, ...)
    ## S3 method for class 'rsmodel'
    personpar(object, ref = NULL, vcov = TRUE,
      interval = NULL, tol = 1e-8, ...)
    ## S3 method for class 'pcmodel'
    personpar(object, ref = NULL, vcov = TRUE,
      interval = NULL, tol = 1e-8, ...)

### Arguments

`object` | a fitted model object for which person parameters should be estimated.
`ref` | a vector of labels or position indices of item parameters or a contrast matrix which should be used as restriction/for normalization. If `NULL` (the default), all items are used (sum zero restriction). This argument will passed over to internal calls of `itempar`.
`vcov` | logical. Should a covariance matrix be estimated (based on the joint log-likelihood) for the person parameter estimates? See also details below.
`interval` | numeric vector of length two, specifying an interval for `uniroot` to search for the person parameter estimates.
`tol` | numeric tolerance passed to `uniroot`.
`...` | further arguments which are passed to `optim` in case of `vcov = TRUE`.

### Details

`personpar` is both, a class to represent person parameters of item response models as well as a generic function. The generic function can be used to estimate the person parameters of a given item response model.

Person parameters are estimated via `uniroot()` with the estimation equations given by Hoijtink & Boomsma (1995) as well as Andersen (1995). This approach is fast and estimates for all possible raw scores are available. If the covariance matrix of the estimated person parameters is requested (`vcov = TRUE`), an additional call of `optim` is necessary to obtain the Hessian. With this approach, person parameters are available only for observed raw scores.

For objects of class `personpar`, several methods to standard generic functions exist: `print`, `coef`, `vcov`. `coef` and `vcov` can be used to extract the person parameters and covariance matrix without additional attributes. Based on this Wald tests or confidence intervals can be easily computed, e.g., via `confint`.

### Value

A named vector with estimated person parmeters of class `personpar` and additional attributes `"model"` (the model name), and `"vcov"` (the covariance matrix of the estimates if `vcov = TRUE` or an NA-matrix otherwise).

### References

Andersen EB (1995). Polytomous Rasch Models and Their Estimation. In Fischer GH, Molenaar IW (eds.). Rasch Models: Foundations, Recent Developments, and Applications.

Hoijtink H, Boomsma A (1995). On Person Parameter Estimation in the Dichotomous Rasch Model. In Fischer GH, Molenaar IW (eds.). Rasch Models: Foundations, Recent Developments, and Applications.

### See Also

`itempar`, `threshpar`, `discrpar`

### Examples

    o <- options(digits = 4)

    ## load verbal aggression data
    data("VerbalAggression", package = "psychotools")

    ## fit a Rasch model to dichotomized verbal aggression data and
    ram <- raschmodel(VerbalAggression$resp2)

    ## extract person parameters
    rap <- personpar(ram)
    rap

    ## extract variance-covariance matrix and standard errors
    vc <- vcov(rap)
    sqrt(diag(vc))

    ## Wald confidence intervals
    confint(rap)

    ## person parameters for RSM/PCM fitted to original polytomous data
    rsm <- rsmodel(VerbalAggression$resp)
    pcm <- pcmodel(VerbalAggression$resp)
    cbind(personpar(rsm, vcov = FALSE), personpar(pcm, vcov = FALSE))

    options(digits = o$digits)

[Package psychotools version 0.4-2 Index]