|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
st: predictnl - calculate mfx and s.e. - oprobit with interaction
From |
Zohal Hessami <[email protected]> |
To |
[email protected] |
Subject |
st: predictnl - calculate mfx and s.e. - oprobit with interaction |
Date |
Tue, 24 Feb 2009 00:09:01 +0100 |
Hello guys,
I am currently estimating an ordered probit model, where I have
included an interaction term. The regression equation looks as follows:
oprobit lifesat male age age_sq income married divorced separated
widowed ageeduc_1619 ageeduc_lt19 unempl school retired home self_empl
govtexp expdecentral expdecexp, r
I have included the interaction term (expdecexp =
expdecentral*govtexp) because I want to test whether the impact of
government size on people's life satisfaction is more likely to be
positive if there is a large extent of expenditure decentralization in
this specific country. As you can see my dataset is generally a
mixture of micro- and macro-level variables.
I am now trying to estimate the marginal effects for govtexp,
expdecentral and the interaction term expdecexp. For this purpose I
found the link
http://www.stata.com/support/faqs/stat/mfx_interact.html very useful.
In the middle section of this website, it is explained how this
calculation is carried out in a binary probit setting with an
interaction term. Accordingly, I have asked STATA to do the following:
local xb _b[male]*`meanmale' + _b[age]*`meanage' +
_b[age_sq]*`meanagesq' + _b[income]*`meanincome' +
_b[married]*`meanmarried' + _b[divorced]*`meandivorced' +
_b[separated]*`meanseparated' + _b[widowed]*`meanwidowed' +
_b[ageeduc_1619]*`meanageeduc_1619' +
_b[ageeduc_lt19]*`meanageeduc_lt19' + _b[unempl]*`meanunempl' +
_b[school]*`meanschool' + _b[retired]*`meanretired' +
_b[home]*`meanhome' + _b[self_empl]*`meanself_empl' +
_b[govtexp]*`meangovtexp' + _b[expdecentral]*`meanexpdecentral' +
_b[expdecexp]*`meangovtexp'*`meanexpdecentral'
predictnl dydg = normalden(_b[/cut3] - `xb')*(_b[govtexp] +
_b[expdecexp]*`meanexpdecentral') in 1, se(seg)
predictnl dyde = normalden(_b[/cut3] - `xb')*(_b[expdecentral] +
_b[expdecexp]*`meangovtexp') in 1, se(see)
predictnl dydeg = normalden(_b[/cut3] - `xb')*(-(_b[/cut3] -
`xb'))*(_b[govtexp] +
_b[expdecexp]*`meanexpdecentral')*(_b[expdecentral] +
_b[expdecexp]*`meangovtexp') + normalden(_b[/cut3] -
`xb')*(_b[expdecexp]) in 1, se(seeg)
I know for sure that my derivations for the equations that I have used
for the marginal effects are correct. Nevertheless, the value for the
marginal effects is reported as ".", while the standard errors that I
get are "0". Furthermore, I get the error messages >>> Warning:
prediction doesn't vary with respect to e(b) <<< and >>> Warning:
prediction constant over observations; perhaps you meant to run
nlcom.<<<<
I also programmed the whole thing with nlcom as described on this
website that I have mentioned above, but I still didn't get any
results. When I did the same calculations when interacting govtexp and
people's income the whole procedure worked perfectly and I got very
convincing results. Apparently, the fact that I am interacting two
macro-level variables is causing trouble. Can anyone help me solve
this problem or tell me how to get the marginal effects that I need???
Thx in advance,
Zohal Hessami
University of Konstanz
Department of Economics
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/