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

# Re: st: comparing coefficients and retrieve b from bootstrap

 From Maarten buis To statalist@hsphsun2.harvard.edu Subject Re: st: comparing coefficients and retrieve b from bootstrap Date Sat, 13 Mar 2010 00:17:14 -0800 (PST)

```--- On Fri, 12/3/10, G. Dai wrote:
> I'm interested in compare two coefficients from the following two
> regressions:
> y=a0+a1*X1+a2*X2+ey
> z=b0+b1*X1+b2*X3+ez
<snip>
> Unfortunately, y is truncated in my data and z is a dummy and thus a
> tobit and a probit will be a better choice. Keep this in mind, I have to
> compare a1 and b1 form the regressions:
> tobit y X1 X2 [pw=weight], ll(.) ul(.)
> probit z X1 X3 [pw=weight]

You can combine models using -suest-, see: -help suest-. However, why do
you expect the two coefficients to be the same? The unit of the depedent
variable is likely to be very different, so a direct comparison of the two
coefficients boils down to comparing apples and oranges.

You could turn the dependent variable of the -tobit- and -logit-
regressions into a similar metric by first computing the standard
deviations of the latent variables, and than divide the parameter of the
variable of interest by this standard deviation

The latent variable in both cases is y* = b0 + b1 x + e (assuming you have
1 explanatory variables x). Using standard rules for variances and standard
deviations (see <http://en.wikipedia.org/wiki/Variance>, you can see that
that the variance of y* is:

b1^2*var(x) + var(e)

var(e) is the sigma that is returned by -tobit- squared or 1 in -probit-, and var(x) can be obtained from -summarize-.

Putting this together:

*--------------------------- begin example -------------------------
sysuse auto, clear
generate wgt=weight/1000
tobit mpg wgt, ll(17)
est store a
probit foreign wgt
est store b
suest a b
sum wgt
local sd_y "sqrt([a_model]_b[wgt]^2*`r(Var)' + [a_sigma]_b[_cons])"
local sd_z "sqrt([b_foreign]_b[wgt]^2*`r(Var)' + 1)"
testnl [a_model]_b[wgt] / `sd_y' = [b_foreign]_b[wgt] / `sd_z'
*---------------------------- end example ---------------------------
( For more on how to use examples I sent to statalist see:
http://www.maartenbuis.nl/stata/exampleFAQ.html )

If you have multiple explanatory variables you also have to take into
account the covariances between the explanatory variables when computing
the standard deviation of y*. The relevant formulas are shown on the

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