Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Matching STATA numbers for Polyserial and Polychoric correlations using Matlab

    I am trying to implement the Polychoric and Polyserial correlation STATA solutions in Matlab but I am not able to match Stas Kolenikov's numbers exactly. Stas Kolenikov wrote the STATA commands for these correlations Matrices.

    From the documentation I could find on the STATA command, it appears that Stas is using a two-step estimation where the thresholds are calculated using the marginal distributions and are then used as knowns and the MLE of the bivariate normal distribution is maximized over the correlation.

    I have used the Drasgow paper as my reference, which uses the two-step estimation among other techniques. I’d be happy to share my Matlab code with here. I am attaching the Drasgow paper for your reference. My Matlab code is able to match the Drasgow numbers.

    For Polychoric, I am using \frac{\delta l}{\delta \sigma} first order condition listed in Drasgow on page 71 and then using the fzero Matlab function.

    For Polyserial, Drasgow produces a relation between Polyserial and product moment correlations in equation 1 on page 69. I use that equation to calculate the Polyserial correlation.

    In both these cases, the thresholds are identified using the marginal distributions.

    I’m wondering if anyone here or Stas himself could tell me exactly what the STATA procedure does so I could match the numbers identically. If Stas's assumptions and first order conditions are listed in some paper then I'd really appreciate it if someone could link to it. The Drasgow paper that I am replicating can be found here.

    Thank you!
    Anshuman
Working...
X