We've got a 524*40 data frame of responses to a likert-type scale questionnaire (7 response categories on 40 items). We want to do exploratory multidimensional IRT using the MHRM method to identify the latent structure. When we run

mirt(SAQdata3, 4, method = 'MHRM')

we get the following error message:

Stage 1: Cycle = 1, Log-Lik = -46764.0, Max Change = 0.2500
Stage 1: Cycle = 2, Log-Lik = -45091.4, Max Change = 0.2500
Error in solve.default(ave.h, grad) : 
  system is computationally singular: reciprocal condition number = 7.06167e-20

We understand that there's something going wrong with the optimization method due to the structure of the data but are unclear exactly what is wrong and if there is any way to fix it?


1 Answer 1


The rank of your matrix isn't full. Try leaving out some features, they are redundant when given other features.

  • $\begingroup$ Indeed that was the problem. There were several categories present in these data that had only 1 subject endorse them (due to some prior data manipulation), and therefore the intercepts were not identified. $\endgroup$ Dec 20, 2013 at 16:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.