Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down at the end of May, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: st: Use of -marginsplot- to plot predicted non linear combination of coefficients


From   Charles Vellutini <charles.vellutini@ecopa.com>
To   "statalist@hsphsun2.harvard.edu" <statalist@hsphsun2.harvard.edu>
Subject   RE: st: Use of -marginsplot- to plot predicted non linear combination of coefficients
Date   Mon, 13 Feb 2012 04:23:49 -0800

Dear Maarteen,

I cannot thank you enough for writing this code for me. I works beautifully! 

Beyond my own small problem, this is really useful to compute expressions based on regression coefficients -- and show the confidence intervals under varying scenarios.

Thanks so much
Charles


-----Message d'origine-----
De : owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] De la part de Maarten Buis
Envoyé : lundi 13 février 2012 10:51
À : statalist@hsphsun2.harvard.edu
Objet : Re: st: Use of -marginsplot- to plot predicted non linear combination of coefficients

On Sun, Feb 12, 2012 at 5:47 PM, Charles Vellutini wrote:
> Dear statalisters,
>
> I am running the following regression:
>
>        regress lnq lnp
>
> and use the coefficient on lnp to compute the following scalar:
>
>        scalar pxopt = CFT*(_b[lnp]/(1+_b[lnp]))
>
> where CFT is a scalar, not a variable (important).
>
> Next, running
>
>        margins,  expression(CFT*(_b[lnp] /(1+_b[lnp] )))
>
> produces the confidence interval for the scalar pxopt, which is already very convenient:
>
> ----------------------------------------------------------------------
> --------
>             |            Delta-method
>             |     Margin   Std. Err.      z    P>|z|     [95% Conf. 
> Interval]
> -------------+--------------------------------------------------------
> -------------+--------
>       _cons |    15.7541   .2571406    61.27   0.000     15.25011    
> 16.25808
> ----------------------------------------------------------------------
> --------
>
> What I would like is a plot of pxopt, with confidence intervals, at varying values of CFT, say over [5,20]. I have been trying to -generate- an adhoc CFT variable to play with -margins- options (particulary -over()-) and -marginsplot-, all to no avail. It is possible with these commands for what I want? Other commands (maybe -nlcom-, but I would then need to create the graph manually I guess)?


This is how I would solve that problem:

*----------------- begin example -------------------- sysuse nlsw88, clear gen lnw = ln(wage) gen lng = ln(grade)

reg lnw lng
est store reg

matrix res = J(151, 4, .)
matrix colnames res = cft b lb ub
local j = 1

_dots 0, title(different margins) reps(151) forvalues i = 50/200 {
	local cft = `i'/10
	capture margins, ///
	expression(`cft'*(_b[lng] /(1+_b[lng] ))) post
	nois _dots `j' `=_rc'
	local lb = _b[_cons] - invnormal(0.975)* _se[_cons]
	local ub = _b[_cons] + invnormal(0.975)* _se[_cons]
	matrix res[`j++',1] = (`cft', _b[_cons], `lb', `ub')
	qui est restore reg
}

svmat res, names(col)

twoway rarea lb ub cft, astyle(ci) ||  ///
       line b cft, lpattern(solid)     ///
       legend(order(1 "95% conf. int." ///
                    2 "b" ))
*------------------ end example --------------------- (For more on examples I sent to the Statalist see:
http://www.maartenbuis.nl/example_faq )

Hope this helps,
Maarten

--------------------------
Maarten L. Buis
Institut fuer Soziologie
Universitaet Tuebingen
Wilhelmstrasse 36
72074 Tuebingen
Germany


http://www.maartenbuis.nl
--------------------------

*
*   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/



*
*   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/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index