Here is an example showing that the problem is that the quantity you are trying to estimate cannot be estimated. That is, it is not estimable. I load the data and run
svyset:
. use diabetes1.dta, clear
. svyset secu [pweight=kwgtr], ///
> strata(stratum) vce(linearized) singleunit(missing)
A logit model is fit:
. svy: logit diabetes ibn.white ///
> ibn.white#(i.female i.educ4cat i.obese c.age##c.age##c.age)
< output omitted >
The
mchange commands computes marginal effects for female, but those for white are missing:
. mchange female white
svy logit: Changes in Pr(y) | Number of obs = 16088
Expression: Pr(diabetes), predict(pr)
| Change p-value
--------------------+----------------------
female |
female vs male | -0.037 0.000
white |
white vs non-white | . . <== this is the problem!
Average predictions
| no diabetes
-------------+----------------------
Pr(y|base) | 0.819 0.181
To figure out why, I add the
details option to
mchange which displays the output from the
margins commands used by
mchange. In this case,
Pairwise comparisons of predictive margins
Model VCE : Linearized
Expression : Pr(diabetes), predict(pr)
---------------------------------------------------------------------
| Delta-method Unadjusted
| Contrast Std. Err. [95% Conf. Interval]
--------------------+------------------------------------------------
white |
white vs non-white | . (not estimable)
---------------------------------------------------------------------
The marginal effect cannot be estimated. In this case it is caused by a poorly specified model. See Stata the manual for more information on how margins determines if a function is estimable. 2014-09-05