I am trying to estimate the number of companies entering certain markets using panel data. To do so, I ran an ordered probit regression in Stata using the gllamm package. The number of companies goes from 0 to 5. The command is as follows (where id = a fixed market):

gllamm NCompanies independent_variables, i(id) link(oprobit)

The outcome, if I understood it correctly, gives the cut points of a latent variable and the impact each independent variable has on the latent variable. So far so good to me, I ran into troubles when I tried to estimate the marginal effects using the commands mfx or margins. When I type

mfx, dydx

I get exactly the same results as displayed by the gllamm (?!) minus the cut points. So, I don´t know if the gllamm was already showing the marginal effects or if it was showing the impact on the latent variable... if I type

mfx, eydx

the outcome differ from the previous mfx - so, I am tending to believe that it was not a bug on the mfx command, but that gllamm was already yielding the marginal effects. To check this, I tried to the margins command:

margins, atmeans continuous

this gives a completely different answer then the previous ones - and the command

margins, atmeans dydx(independent_variables) continuous

does not converge. Does any one knows the answer to the following questions?

  1. Is the gllamm already giving the marginal effects in the above case?
  2. Am I using the margins command in the wrong way if I want to compute the marginal effects of each independent variable (they are all continuous)? If so, what should I do instead?


Your Answer

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