difMH {difR} | R Documentation |
Performs DIF detection using Mantel-Haenszel method.
difMH(Data, group, focal.name , correct=TRUE, alpha=0.05, purify=FALSE, nrIter=10) ## S3 method for class 'MH': print(x, ...) ## S3 method for class 'MH': plot(x, pch=8, number=TRUE, col="red", ...)
Data |
numeric: either the data matrix only, or the data matrix plus the vector of group membership. See Details. |
group |
numeric or character: either the vector of group membership or the column indicator (within data ) of group membership. See Details. |
focal.name |
numeric or character indicating the level of group which corresponds to the focal group. |
correct |
logical: should the continuity correction be used? (default is TRUE ) |
alpha |
numeric: significance level (default is 0.05). |
purify |
logical: should the method be used iteratively to purify the set of anchor items? (default is FALSE). |
nrIter |
numeric: the maximal number of iterations in the item purification process. Default is 10. |
x |
the result from a MH class object. |
pch, col |
type of usual pch and col graphical options. |
number |
logical: should the item number identification be printed (default is TRUE ). |
... |
other generic parameters for the plot or the print functions. |
The method of Mantel-Haenszel (1959) allows for detecting uniform differential item functioning without requiring an item response model approach.
The Data
is a matrix whose rows correspond to the subjects and columns to the items. Missing values are not allowed.
In addition, Data
can hold the vector of group membership. If so, group
indicates the column of Data
which
corresponds to the group membership, either by specifying its name or by giving the column number. Otherwise,
group
must be a vector of same length as nrow(Data)
.
The vector of group membership must hold only two different values, either as numeric or character. The focal group is defined by
the value of the argument focal.name
.
The threshold (or cut-score) for classifying items as DIF is computed as the quantile of the chi-square distribution with lower-tail
probability of one minus alpha
and with one degree of freedom.
By default, the continuity correction factor -0.5 is used (Holland and Thayer, 1988). One can nevertheless remove it by specifying correct=FALSE
.
Item purification can be performed by setting purify
to TRUE
. Purification works as follows: if at least one item was detected as functioning
differently at some step of the process, then the data set of the next step consists in all items that are currently anchor (DIF free) items, plus the
tested item (if necessary). The process stops when either two successive applications of the method yield the same classifications of the items (Clauser and Mazor, 1998),
or when nrIter
iterations are run without obtaining two successive identical classifications. In the latter case a warning message is printed.
A list of class "MH" with the following arguments:
MH |
the values of the Mantel-Haenszel statistics. |
alpha |
the value of alpha argument. |
thr |
the threshold (cut-score) for DIF detection. |
DIFitems |
either the column indicators of the items which were detected as DIF items, or "No DIF item detected". |
correct |
the value of correct option. |
purification |
the value of purify option. |
nrPur |
the number of iterations in the item purification process. Returned only if purify is TRUE . |
difPur |
a binary matrix with one row per iteration in the item purification process and one column per item. Zeros and ones in the i-th
row refer to items which were classified respectively as non-DIF and DIF items at the (i-1)-th step. The first row corresponds to the initial
classification of the items. Returned only if purify is TRUE . |
convergence |
logical indicating whether the iterative item purification process stopped before the maximal number nrIter of allowed iterations.
Returned only if purify is TRUE . |
names |
the names of the items. |
Sebastien Beland
Centre sur les Applications des Modeles de Reponses aux Items (CAMRI)
Universite du Quebec a Montreal
sebastien.beland.1@hotmail.com
David Magis
Research Group of Quantitative Psychology and Individual Differences
Katholieke Universiteit Leuven
David.Magis@psy.kuleuven.be, http://ppw.kuleuven.be/okp/home/
Gilles Raiche
Centre sur les Applications des Modeles de Reponses aux Items (CAMRI)
Universite du Quebec a Montreal
raiche.gilles@uqam.ca, http://www.er.uqam.ca/nobel/r17165/
Holland, P. W. and Thayer, D. T. (1988). Differential item performance and the Mantel-Haenszel procedure. In H. Wainer and H. I. Braun (Ed.), Test validity. Hillsdale, New Jersey: Lawrence Erlbaum Associates.
Mantel, N. and Haenszel, W. (1959). Statistical aspects of the analysis of data from retrospective studies of disease. Journal of the National Cancer Institute, 22, 719-748.
Raju, N. S., Bode, R. K. and Larsen, V. S. (1989). An empirical assessment of the Mantel-Haenszel statistic to detect differential item functioning. Applied Measurement in Education, 2, 1-13.
Uttaro, T. and Millsap, R. E. (1994). Factors influencing the Mantel-Haenszel procedure in the detection of differential item functioning. Applied Psychological Measurement, 18, 15-25.
# Loading of the verbal data data(verbal) # Excluding the "Anger" variable verbal <- verbal[colnames(verbal)!="Anger"] # Three equivalent settings of the data matrix and the group membership difMH(verbal, group=25, focal.name=1) difMH(verbal, group="Gender", focal.name=1) difMH(verbal[,1:24], group=verbal[,25], focal.name=1) # With item purification difMH(verbal, group="Gender", focal.name=1, purify=TRUE) difMH(verbal, group="Gender", focal.name=1, purify=TRUE, nrIter=5) # Without continuity correction and with 0.01 significance level difMH(verbal, group="Gender", focal.name=1, alpha=0.01, correct=FALSE)