Statalist The Stata Listserver


[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

Re: st: Predict and adjust


From   "Tim Wade" <[email protected]>
To   [email protected]
Subject   Re: st: Predict and adjust
Date   Tue, 26 Dec 2006 18:22:54 -0500

Fred, I haven't thought through this completely (and Michael and
Marteen have already provided great explanations), but as I was
thinking about your example I calculated the adjusted probabilities
holding each variable constant at its mean and it seems to produces
the same marginal results as the adjust command.  I never have used
adjust without specifying any variables, so I'm not sure about this
exactly. Tim

. xi: logistic low age lwt i.race smoke,nolog
i.race            _Irace_1-3          (naturally coded; _Irace_1 omitted)

Logistic regression                               Number of obs   =        189
                                                 LR chi2(5)      =      20.08
                                                 Prob > chi2     =     0.0012
Log likelihood = -107.29639                       Pseudo R2       =     0.0856

------------------------------------------------------------------------------
        low | Odds Ratio   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
        age |   .9777443   .0334083    -0.66   0.510     .9144097    1.045466
        lwt |   .9875761    .006305    -1.96   0.050     .9752956    1.000011
   _Irace_2 |   3.425372   1.771281     2.38   0.017     1.243215    9.437768
   _Irace_3 |     2.5692   1.069301     2.27   0.023     1.136391    5.808555
      smoke |   2.870346    1.09067     2.77   0.006        1.363    6.044672
------------------------------------------------------------------------------

. predict p
(option p assumed; Pr(low))

. adjust,pr

--------------------------------------------------------------------------------------------------------
    Dependent variable: low     Command: logistic
  Variables left as is: age, lwt, smoke, _Irace_2, _Irace_3
--------------------------------------------------------------------------------------------------------

----------------------
     All |         pr
----------+-----------
         |    .289227
----------------------
    Key:  pr  =  Probability

. /*generate linear predictor, holding predictors constant at mean*/
.
.
. foreach var of varlist low age lwt _Irace* smoke {
 2. qui sum `var'
 3. local mean`var'=r(mean)
 4. }

. gen x1=_b[_cons]+(`meanage'*_b[age])+(`mean_Irace_2'*_b[_Irace_2])+(`mean_Irace_3'*_b[_Irace_3])+(`mea
nlwt'*_b[lwt])+(`meansmoke'*_b[smoke])
.
. /*generate odds*/
.
. gen odds3=exp(x1)

. /*generate probability*/
.
. gen p3=odds3/(odds3+1)

. list p3 in 1

    +----------+
    |       p3 |
    |----------|
 1. | .2892265 |
    +----------+

. sum p3

   Variable |       Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
         p3 |       189    .2892265           0   .2892265   .2892265







On 12/23/06, Fred Wolfe <[email protected]> wrote:
I know this has come up on the Stata list before, but in somewhat
different form. I wonder if someone could explain the following to me.

The manual and the FAQ state that the results after predict and
adjust are the same for the following circumstances, and they site
this analysis that I have rerun.

. sysuse auto, clear
(1978 Automobile Data)

. regress mpg weight length foreign

       Source |       SS       df       MS              Number of obs =      74
-------------+------------------------------           F(  3,    70) =   48.10
        Model |   1645.2889     3  548.429632           Prob > F      =  0.0000
     Residual |  798.170563    70  11.4024366           R-squared     =  0.6733
-------------+------------------------------           Adj R-squared =  0.6593
        Total |  2443.45946    73  33.4720474           Root MSE      =  3.3767

------------------------------------------------------------------------------
          mpg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
       weight |  -.0043656   .0016014    -2.73   0.008    -.0075595   -.0011718
       length |  -.0827432   .0547942    -1.51   0.136    -.1920267    .0265403
      foreign |  -1.707904    1.06711    -1.60   0.114    -3.836188    .4203806
        _cons |   50.53701   6.245835     8.09   0.000     38.08009    62.99394
------------------------------------------------------------------------------

. predict p, xb

. su p

     Variable |       Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
            p |        74     21.2973    4.747442   10.12822   30.51564

. su mpg

     Variable |       Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
          mpg |        74     21.2973    5.785503         12         41

. adjust

---------------------------------------------------------------------------
      Dependent variable: mpg     Command: regress
    Variables left as is: weight, length, foreign
---------------------------------------------------------------------------

----------------------
       All |         xb
----------+-----------
           |    21.2973
----------------------
      Key:  xb  =  Linear Prediction


The above shows that adjust and predict produce the same results.

However, when I use the logistic regression example from page 20
(Reference A-J) for the adjust command, predict and adjust give
different results, as shown below. Can someone help me to understand
why this is so and what I might do to obtain the same results using adjust.

Thanks,

Fred



. use http://www.stata-press.com/data/r9/lbw,clear
(Hosmer & Lemeshow data)

. xi: logistic low age lwt i.race smoke,nolog
i.race            _Irace_1-3          (naturally coded; _Irace_1 omitted)

Logistic regression                               Number of obs   =        189
                                                   LR chi2(5)      =      20.08
                                                   Prob > chi2     =     0.0012
Log likelihood = -107.29639                       Pseudo R2       =     0.0856

------------------------------------------------------------------------------
          low | Odds Ratio   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
          age |   .9777443   .0334083    -0.66   0.510     .9144097    1.045466
          lwt |   .9875761    .006305    -1.96   0.050     .9752956    1.000011
     _Irace_2 |   3.425372   1.771281     2.38   0.017     1.243215    9.437768
     _Irace_3 |     2.5692   1.069301     2.27   0.023     1.136391    5.808555
        smoke |   2.870346    1.09067     2.77   0.006        1.363    6.044672
------------------------------------------------------------------------------

. tab low

birthweight |
      <2500g |      Freq.     Percent        Cum.
------------+-----------------------------------
           0 |        130       68.78       68.78
           1 |         59       31.22      100.00
------------+-----------------------------------
       Total |        189      100.00

. predict p
(option p assumed; Pr(low))

. su p

     Variable |       Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
            p |       189    .3121693    .1481592   .0471794   .7063822


. adjust,pr

-------------------------------------------------------------------------------
      Dependent variable: low     Command: logistic
    Variables left as is: age, lwt, smoke, _Irace_2, _Irace_3
-------------------------------------------------------------------------------

----------------------
       All |         pr
----------+-----------
           |    .289227
----------------------
      Key:  pr  =  Probability


Fred Wolfe
National Data Bank for Rheumatic Diseases
Wichita, Kansas
Tel +1 316 263 2125
[email protected]


*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/

*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/



© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index