Learn R Programming

irtoys (version 0.1.5)

itf: Test item fit

Description

Returns a statistic of item fit together with its degrees of freedom and p-value. Optionally produces a plot.

Usage

itf(resp, ip, item, stat = "lr", theta, groups, standardize = TRUE, mu = 0, sigma = 1, 
    do.plot = TRUE, main = "Item fit")

Arguments

resp
A matrix of responses: persons as rows, items as columns, entries are either 0 or 1, no missing data
ip
Item parameters: a matrix with one row per item, and three columns: [,1] item discrimination $a$, [,2] item difficulty $b$, and [,3] asymptote $c$.
item
A single number pointing to the item (column of resp, row of ip), for which fit is to be tested
stat
The statistic to be computed, either "chi" or "lr". Default is "lr". See details below.
theta
A vector containing some viable estimate of the latent variable for the same persons whose responses are given in resp. If not given (and group is also missing), EAP estimates will be computed from resp and <
groups
An object produced by function grp. If not given, grp will be applied on theta with its default values.
standardize
Standardize the distribution of ability estimates?
mu
Mean of the standardized distribution of ability estimates
sigma
Standard deviation of the standardized distribution of ability estimates
do.plot
Whether to do a plot
main
The title of the plot if one is desired

Value

  • A list of:
  • statisticThe value of the statistic of item fit
  • dfrThe degrees of freedom
  • pvalueThe p-value

Details

Given a long test, say 20 items or more, a large-test statistic of item fit could be constructed by dividing examinees into groups of similar ability, and comparing the observed proportion of correct answers in each group with the expected proportion under the proposed model. Different statistics have been proposed for this purpose.

The chi-squared statistic $$X^2=\sum_g(N_g\frac{(p_g-\pi_g)^2}{\pi_g(1-\pi_g)},$$ where $N_g$ is the number of examinees in group $g$, $p_g=r_g/N_g$, $r_g$ is the number of correct responses to the item in group $g$, and $\pi_g$ is the IRF of the proposed model for the median ability in group $g$, is attributed by Embretson & Reise to R. D. Bock, although the article they cite does not actually mention it. The statistic is the sum of the squares of quantities that are often called "Pearson residuals" in the literature on categorical data analysis.

BILOG uses the likelihood-ratio statistic $$X^2=2\sum_g\left[r_g\log\frac{p_g}{\pi_g} + (N_g-r_g)\log\frac{(1-p_g)}{(1-\pi_g)}\right],$$ where $\pi_g$ is now the IRF for the mean ability in group $g$, and all other symbols are as above.

Both statistics are assumed to follow the chi-squared distribution with degrees of freedom equal to the number of groups minus the number of parameters of the model (eg 2 in the case of the 2PL model). The first statistic is obtained in itf with stat="chi", and the second with stat="lr" (or not specifying stat at all).

In the real world we can only work with estimates of ability, not with ability itself, so the approach is a bit circular in defining the groups. I have tried to offer some extra flexibility with the arguments theta nor group:

  • if neitherthetanorgroupis specified,item.testwill compute EAP estimates of ability for the proposed model, group them, and use medians for"chi"or means for"lr". This is the approximate behaviour of BILOG (assumingstat="lr").
  • the EAP abilities can be overriden by computing some other ability estimates, or even the rank quantiles produced byqrsand passing them toitem.testastheta.
  • the default grouping (medians for"chi", means for"lr") can be overriden by preparing the groups withgrpand passing them toitem.testasgroup. In that case,thetais not needed.

If the test has less than 20 items, item.test will issue a warning. For tests of 10 items or less, BILOG has a special statistic of fit, which can be found in the BILOG output. Also of interest is the fit in 2- and 3-way marginal tables in package ltm.

References

S. E. Embretson and S. P. Reise (2000), Item Response Theory for Psychologists, Lawrence Erlbaum Associates, Mahwah, NJ

M. F. Zimowski, E. Muraki, R. J. Mislevy and R. D. Bock (1996), BILOG--MG. Multiple-Group IRT Analysis and Test Maintenance for Binary Items, SSI Scientific Software International, Chicago, IL

See Also

grp, eap, qrs

Examples

Run this code
p.2pl <- est(Scored, model = "2PL", engine = "ltm")
fit <- itf(resp = Scored, ip = p.2pl, item = 7)

Run the code above in your browser using DataLab