nplmodel
(plmodel
for backward compatibility with earlier
psychotools versions) provides a basic fitting function for n-PL type parametric logistic IRT
models (2PL, 3PL, 3PLu, 4PL, Rasch/1PL) providing a wrapper around
mirt
and multipleGroup
relying on
MML estimation via the standard EM algorithm (Bock & Aitkin, 1981). Models are
estimated under the slope/intercept parametrization, see e.g. Chalmers (2012).
The probability of person \(i\) ‘solving’ item \(j\) is modelled as:
$$P(X_{ij} = 1|\theta_{i},a_{j},d_{j},g_{j},u_{j}) =
g_{j} + \frac{(u_{j} - g_{j})}{1 + \exp{(-(a_{j}\theta_{i} + d_{j}))}}$$
A reparametrization of the intercepts to the classical IRT parametrization,
\(b_{j} = -\frac{d_{j}}{a_{j}}\), is provided via the corresponding
itempar
method.
If an optional impact
variable is supplied, a multiple-group model of
the following form is being fitted: Item parameters are fixed to be equal
across the whole sample. For the first group of the impact
variable the
person parameters are fixed to follow the standard normal distribution. In the
remaining impact
groups, the distributional parameters (mean and
variance of a normal distribution) of the person parameters are
estimated freely. See e.g. Baker & Kim (2004, Chapter 11), Debelak & Strobl
(2019), or Schneider et al. (2022) for further details. To improve convergence of the model fitting
algorithm, the first level of the impact
variable should always correspond
to the largest group. If this is not the case, levels are re-ordered internally.
If grouppars
is set to TRUE
the freely estimated distributional
group parameters (if any) are returned as part of the model parameters.
By default, type
is set to "2PL"
. Therefore, all so-called
guessing parameters are fixed at 0 and all upper asymptotes are fixed at 1.
"3PL"
results in all upper asymptotes being fixed at 1 and "3PLu"
results in all all guessing parameters being fixed at 0. "4PL"
results
in a full estimated model as specified above. Finally, if type
is set to
"1PL"
(or equivalently "RM"
), an MML-estimated Rasch model is
being fitted. This means that all slopes are restricted to be equal across all
items, all guessing parameters are fixed at 0 and all upper asymptotes are
fixed at 1.
Note that internally, the so-called guessing parameters and upper asymptotes
are estimated on the logit scale (see also mirt
).
Therefore, most of the basic methods below include a logit
argument,
which can be set to TRUE
or FALSE
allowing for a retransformation
of the estimates and their variance-covariance matrix (if requested) using the
logistic function and the delta method if logit = FALSE
.
nplmodel
returns an object of class "nplmodel"
for which
several basic methods are available, including print
, plot
,
summary
, coef
, vcov
, logLik
, estfun
,
discrpar
, itempar
, threshpar
,
guesspar
, upperpar
, and personpar
.
Finally, if type
is set to "1PL"
, a Rasch model is estimated.
Here, a common slope parameter is estimated for all items, whereas the
person parameters are assumed to follow a standard normal distribution.
Please note that this variant of the Rasch model differs from the one used
by mirt
, which sets all slope parameters to 1, and
estimates the variance of the person parameters instead. Both variants
are mathematically equivalent and hence should lead to the same intercept parameter
estimates. For numerical reasons, nplmodel
and mirt
can lead to slightly different item parameter estimates, though, under their
respective default settings, in particular when some items are very easy
or very difficult and the common slope parameter is large. A distinct advantage
of the variant used by nplmodel
is that it allows a direct
comparison of the slope and intercept parameters with that estimated in more complex
IRT models, such as the 2PL model.