EAP score estimation for multiple groups

167 views
Skip to first unread message

Pedro Martelleto

unread,
Mar 5, 2021, 5:03:11 PM3/5/21
to mirt-package
Hello,

I'm curious about some of the inner workings of mirt. Nothing too complicated.

Suppose we have two groups:
Group A: Answered an exam with Items 1-3 and 7-20 (total of 17 items)
Group B: Answered an exam with Items 4-6 and 7-20 (total of 17 items)

A model is fit to these two groups using mirt's multigroup function.
I can then call fscores to get two dataframes (one for each group) with each individual's scores.

My question is: How does mirt compute these scores (assume method is EAP) and how does it differ from single-group score computation?

I've tried going through the source code but I haven't quite figured it out. It seems a function called MGC2SC is called and then the scores are computed using the usual EAP score estimation function (fscores)? (links to source code below).

---------------------


MGC2SC function source code (If anyone could explain what this does it would be very helpful):

---------------------

Best,
Pedro

Phil Chalmers

unread,
Mar 5, 2021, 10:16:07 PM3/5/21
to Pedro Martelleto, mirt-package
On Fri, Mar 5, 2021 at 5:03 PM Pedro Martelleto <martelle...@gmail.com> wrote:
Hello,

I'm curious about some of the inner workings of mirt. Nothing too complicated.

Suppose we have two groups:
Group A: Answered an exam with Items 1-3 and 7-20 (total of 17 items)
Group B: Answered an exam with Items 4-6 and 7-20 (total of 17 items)

A model is fit to these two groups using mirt's multigroup function.
I can then call fscores to get two dataframes (one for each group) with each individual's scores.

My question is: How does mirt compute these scores (assume method is EAP) and how does it differ from single-group score computation?

If the method involves some Bayesian prior then this information is taken from the mean-variance combinations in the respective groups, which could be equal (e.g., left as N(0,1)) or freed in the focal groups. Though in principle there isn't really any difference when computing factor scores in comparison to the single group approach; the functions just pick the parameter sets according to which group the individual belongs to, and use those. 
 

I've tried going through the source code but I haven't quite figured it out. It seems a function called MGC2SC is called and then the scores are computed using the usual EAP score estimation function (fscores)? (links to source code below).

Sure, fundamentally there is no reason to consider the complete grouping information all at once, and instead you can focus on one group at a time and treat it as a single-group object to score. The main reason to be using a multigroup model is just to allow for differences in parameters and latent variable distributions at the time of estimation, but once that's done nothing stops you from extracting any given group's information and using that as though it is a single group object. There are few times where that isn't true though (e.g., in the M2 statistic when computing moments for the Jacobian of the full parameter space) but in the case of obtaining point estimates this is a sufficient approach. HTH.

Phil

 

---------------------


MGC2SC function source code (If anyone could explain what this does it would be very helpful):

---------------------

Best,
Pedro

--
You received this message because you are subscribed to the Google Groups "mirt-package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mirt-package...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mirt-package/7a77e5ff-5afa-4325-a886-82a7c2a51e08n%40googlegroups.com.

Pedro Martelleto

unread,
Mar 6, 2021, 8:49:19 AM3/6/21
to mirt-package
Thank you Phil, your answer helped a lot.
Reply all
Reply to author
Forward
0 new messages