Dear Talk Stats readers,
I have a Stata problem.
I would like to test whether the difference between the marginal effects of a dummy varaible, obtained first by computing the difference and then by taking the derivative, is statistically significant. I want to implement this test in order to justify the utilization of the derivative. The model I am suing is the probit model; my vars are y x1 x2 x3, where x1 and x2 are the dummy variables. Below you can read the syntax I am using.
1) First, I generate an identical dummy var, but with a different name. gen x1bis = x1
2) Second, I regress the probit model, compute the marginal effect of x1 computing the difference, and I store the estimate probit y i.x1 i.x2 x3, cluster(id) margins, dydx(x1) atmeans post matrix list e(b) est store mfx1 estimate query
3) Third, I regress the probit model, compute the marginal effect of x1bis taking the derivatie, and I store the estimate probit y i.x1bis i.x2 x3, cluster(id) margins, dydx(x1bis) cont atmeans post matrix list e(b) est store mfx2 estimate query
4) Eventually, I test the difference lincom _b[1.x1] - _b[1.x1bis]
Stata returns these results: Coef. = 0 and Std. Err. = (omitted), while z, P|z| and CI = .
As you see, I control with "estimate query" what I have actually stored and the corresponding values: _b[1.x1] and _b[1.x1bis] corresponds to the estimates of the marginal effects computed in the two different ways, and their value is not the same.
Is there a syntax or (worse) a methodological problem in what I am doing? Do you have any suggestion concerning a possible correction, or even concerning a different way to implement this test?
Thank you very much!
I have a Stata problem.
I would like to test whether the difference between the marginal effects of a dummy varaible, obtained first by computing the difference and then by taking the derivative, is statistically significant. I want to implement this test in order to justify the utilization of the derivative. The model I am suing is the probit model; my vars are y x1 x2 x3, where x1 and x2 are the dummy variables. Below you can read the syntax I am using.
1) First, I generate an identical dummy var, but with a different name. gen x1bis = x1
2) Second, I regress the probit model, compute the marginal effect of x1 computing the difference, and I store the estimate probit y i.x1 i.x2 x3, cluster(id) margins, dydx(x1) atmeans post matrix list e(b) est store mfx1 estimate query
3) Third, I regress the probit model, compute the marginal effect of x1bis taking the derivatie, and I store the estimate probit y i.x1bis i.x2 x3, cluster(id) margins, dydx(x1bis) cont atmeans post matrix list e(b) est store mfx2 estimate query
4) Eventually, I test the difference lincom _b[1.x1] - _b[1.x1bis]
Stata returns these results: Coef. = 0 and Std. Err. = (omitted), while z, P|z| and CI = .
As you see, I control with "estimate query" what I have actually stored and the corresponding values: _b[1.x1] and _b[1.x1bis] corresponds to the estimates of the marginal effects computed in the two different ways, and their value is not the same.
Is there a syntax or (worse) a methodological problem in what I am doing? Do you have any suggestion concerning a possible correction, or even concerning a different way to implement this test?
Thank you very much!