DIF with IRT PreviousNext
Mplus Discussion > Categorical Data Modeling >
Message/Author
 Thomas Olino posted on Wednesday, August 22, 2007 - 6:03 pm
Hello,

I am helping examine differential item functioning between men and women on a number of categorical indicators. I had been planning on using the grouping option to specify multiple groups, however, when I do this, the program halts and requests that I use the knownclass option. I have 2 points that I want to clarify:

1) If I change the estimator to WLSMV and run the model under those assumptions, the results of the DIF analyses would be interpretable ftom the difftest command, right?

2) If I use the knownclass command, I would specify:

classes are sex (2) c (2);
knownclass is sex (1=male 2=female);

and then run the analysis with an overall model and class specific models to test DIF. Is that correct?

Thanks,

Tom
 Linda K. Muthen posted on Thursday, August 23, 2007 - 11:22 am
1. Yes.

2. Yes.
 Stata posted on Thursday, October 04, 2012 - 2:13 pm
Dr. Muthens,

I am interested in conducting
1) differential item functioning with IRT, logistic regression, and Mantel-Haenszel. I haven't found any examples (syntax) in Mplus website regarding how these DIF methods are used with Mplus. Is it possible to conduct these analysis with Mplus? I hope it is possible.

2)The dataset which will be used for the analysis is a national dataset. In this case, is it necessary to incorporate sampling weight in DIF analysis?

Thank you
 Bengt O. Muthen posted on Friday, October 05, 2012 - 8:50 am
IRT DIF can be investigated in Mplus using the MIMIC (factor analysis with covariates) approach or the multiple-group approach. Please see the Topic 1-2 handouts and videos on our web site. You can use ML, WLSMV, or Bayes estimation.

Sampling weights should and can be included.
 Owis Eilayyan posted on Saturday, October 15, 2016 - 3:30 pm
Hello Dr. Muthen,

I am running an IRT model, I would like to assess the Differential Item Functioning on 3 variables: age, gender, and language. age has 3 categories. I used ICC graphs to assess the DIF. However, for age I got only 2 lines instead of 3! I used the following syntax, I am not sure if what I did is right or not!

usevariables are HADS_A1N HADS_A7N HADS_A9N HADS_A13N SF6a3 HADS_A3 SF4Bv gender LANG agen;
missing = .;

categorical are HADS_A1N HADS_A7N HADS_A9N HADS_A13N SF6a3 HADS_A3 SF4Bv;

ANALYSIS:
ESTIMATOR = ML;
PROCESSORS = 8;

MODEL:
Anxiety by HADS_A1N* HADS_A7N - SF4Bv;
HADS_A1N HADS_A7N HADS_A9N HADS_A13N SF6a3 HADS_A3 SF4Bv on gender;
HADS_A1N HADS_A7N HADS_A9N HADS_A13N SF6a3 HADS_A3 SF4Bv on LANG;
HADS_A1N HADS_A7N HADS_A9N HADS_A13N SF6a3 HADS_A3 SF4Bv on agen;

Anxiety@1;
[Anxiety@0];

PLOT:
TYPE = PLOT1 PLOT2 PLOT3;

OUTPUT:
TECH1 TECH5 TECH8 TECH10;

Thank you,
Owis
 Bengt O. Muthen posted on Sunday, October 16, 2016 - 5:47 pm
You should regress the anxiety factor on all your covariates. You can't identify the direct effects from the covariates to all your factor indicators in addition to the factor regression so you would have to regress one indicator at a time on all covariates.

If you want to treat the 3-category age variable as binary dummy variables, you should use only 2.
 Owis Eilayyan posted on Monday, October 17, 2016 - 6:40 am
Hello Dr. Muthen,

Thank you for your response, I just want to make sure that I got the point. So I regressed each indicator on all covariates using the following syntax:

For "age", I dont want to use it as binary, but when I look at age DIF graph, I see only 2 lines instead of 3 (it looks like a binary variable)

MODEL:
Anxiety by HADS_A1N* HADS_A7N - SF4Bv;
HADS_A1N on gender LANG agen;
HADS_A7N on gender LANG agen;
HADS_A9N on gender LANG agen;
HADS_A13N on gender LANG agen;
SF6a3 on gender LANG agen;
HADS_A3 on gender LANG agen;
SF4Bv on gender LANG agen;


Anxiety@1;
[Anxiety@0];

Thank you,
Owis
 Bengt O. Muthen posted on Monday, October 17, 2016 - 4:20 pm
No, that's not what I meant - see the first paragraph of my answer.

Regarding the DIF plot, please send the output and the .gh5 file to Support along with your license number so we can look at it.
 Teresia Ong posted on Wednesday, November 15, 2017 - 8:27 am
Dear Dr. Muthen,

I am interested in conducting differential item function (DIF) with IRT-likelihood ratio test. I haven’t found any examples in Mplus manual or website regarding how this method is used with Mplus. Is it possible to conduct DIF analysis with IRT-likelihood ratio test with Mplus?

Thank you.

Teresia
 Bengt O. Muthen posted on Wednesday, November 15, 2017 - 10:58 am
Yes. You can do a multiple-group analysis (or Mixture Knownclass analysis) where you run with an without measurement parameter constraints across the groups.
 Owis Eilayyan posted on Monday, June 24, 2019 - 1:06 am
Dear Dr. Muthen,

I want to assess the DIF in IRT model using Wald test. I couldn’t find a syntax how to use Wald test to assess DIF in MPLUS. Could you help me in that.

Thank you,
Owis
 Bengt O. Muthen posted on Monday, June 24, 2019 - 3:53 pm
I don't have that readily available. This is a good question for SEMNET.
 Amanda Lemmon posted on Wednesday, October 07, 2020 - 7:51 pm
Hi -

I am trying to DIF analysis, similar to that of the topic starter. I am using ML with categorical variables.

I got an error message when I used GROUPING, saying I need to use TYPE = MIXTURE and KNOWNCLASS option. I wrote the code similar to that of the topic starter, which was:

classes are sex (2) c (2);
knownclass is sex (1=male 2=female);

However, the new code also produced an error message, saying that "Categorical latent variable cannot have the same name as observed variables."

However, the point of my DIF analysis is to investigate DIF across an observed sex variable...

How do I correct my code so that it would run?

Thank you!
 Bengt O. Muthen posted on Thursday, October 08, 2020 - 11:32 am
Simply change to:

classes are csex (2) c (2);
knownclass is csex (1=male 2=female);
 Amanda Lemmon posted on Thursday, October 08, 2020 - 12:17 pm
Thank you for your response! Now I get a different error message: "Invalid value in KNOWNCLASS option."
 Bengt O. Muthen posted on Thursday, October 08, 2020 - 1:36 pm
Going by page 628 of the UG, say:

classes are csex (2) c (2);
knownclass is csex (sex = 1 2);

This assumes that sex is the name of the observed variable.
 Amanda Lemmon posted on Thursday, October 08, 2020 - 9:35 pm
Thank you! It works now!

I also wanted to ask a related question about WLSMV. Why do I get only standardized results with WLSMV? With ML, I get different numbers for unstandardized and standardized outputs, but with WLSMV I get the same numbers.
Back to top
Add Your Message Here
Post:
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action: