Skip to main content Accessibility help
×
Home
  • Print publication year: 2010
  • Online publication date: June 2012

Appendix - Statistical Software for Differential Item Functioning Analysis

Summary

Several software packages are available for conducting differential item functioning (DIF) analyses, and many analyses can be done using standard statistical software packages such as SAS or SPSS. Camilli and Shepard (1994) and Zumbo (1999) provided some code for conducting DIF analyses in SPSS, and some code for conducting a logistic regression DIF analysis using SPSS is provided in this Appendix. In addition, at the time of this writing, several DIF software packages are available for free on the Internet. I list some of them here. I would thank the authors of these programs for allowing free access to these packages. They are helpful to those of us who wish to investigate DIF, and we remain grateful to them.

Free differential item functioning software available on the internet

Item Response Theory Likelihood Ratio DIF Software

Dave Thissen created an excellent piece of software that makes item response theory (IRT) likelihood ratio DIF analysis much easier. I really like this package. At the time of this writing, IRTLRDIF v. 2 for windows can be downloaded at http://www.unc.edu/∼dthissen/dl/irtlrdif201.zip, and for MAC at http://www.unc.edu/∼dthissen/dl/IRTLRDIF201.sit.

Logistic Regression

Bruno Zumbo (1999) developed a terrific handbook on understanding and interpreting DIF in which he focuses on the logistic regression procedure. The handbook can be downloaded from http://educ.ubc.ca/faculty/zumbo/DIF. It includes some code for running logistic regression analyses in SPSS. Although the code still works, it is a bit dated. Here is some code for running a logistic regression analysis in SPSS on a dichotomously scored item:

LOGISTIC REGRESSION VAR=item5

/METHOD=ENTER tot

/CRITERIA PIN(.05) POUT(.10) ITERATE(20) CUT(.5).

LOGISTIC REGRESSION VAR=item5

/METHOD=ENTER tot group

/CRITERIA PIN(.05) POUT(.10) ITERATE(20) CUT(.5).

LOGISTIC REGRESSION VAR=item5

/METHOD=ENTER tot group group*tot

/CRITERIA PIN(.05) POUT(.10) ITERATE(20) CUT(.5).

As described in this chapter, the analysis actually involves three separate logistic regression runs. In this example, “item5” is the item being analyzed for DIF, “tot” is the total score, and “group” is the dichotomous variable that indicates the reference or focal group. The first analysis gives us a baseline for gauging the increase in variance accounted for by the second and third analyses. The second analysis adds the grouping variable (to test for uniform DIF), and the third analysis adds the group-by-total score interaction, to test for nonuniform DIF. Note that default values are used in this code for inclusion and exclusion criteria and for the number of iterations. The code for analyzing DIF on a polytomous (e.g., Likert-type) item uses polytomous logistic regression and is similar:

PLUM

Item5 BY group WITH tot

/CRITERIA = CIN(95) DELTA(0) LCONVERGE(0) MXITER(100) MXSTEP(5)

PCONVERGE(1.0E-6) SINGULAR(1.0E-8)

/LINK = LOGIT

/PRINT = FIT PARAMETER SUMMARY.

Again, the default inclusion–exclusion and iteration criteria are used, and “item5” refers to the item of interest. However, this time the item may have more than two response categories.

Multiple DIF Procedures