BookmarkSubscribeRSS Feed
egarcia
Calcite | Level 5

How does SAS calculate 'xbeta' output in proc logistic? I am using censored data and the Heckman Two-Step method to run a regression analysis, so here's the dilemma:

Heckman Two-Step Method:

1. Regress binary censored variable (eq 1 if censored, 0 otherwise) on RHS variables.

     proc logistic data=all_data;

          model censored = RHS_variables / link=probit;

          output out=probit xbeta=xbeta stdxbeta=stdxbeta;

     run;

2. Regress dependent variables of interest on RHS variables and Inverse Mills Ratio of (-Xi(beta/sigma))

     data probit;

          set probit;

          imr=pdf('NORMAL', xbeta)/cdf('NORMAL',xbeta);

          label imr='Inverse Mills Ratio';

     run;

     proc reg data=probit;

          model dep_var=RHS_variables imr / acov;

          where censored=1;

          output out=heckman;

     run; quit;

Essentially, is xbeta (calculated by SAS) equal to (-Xi(beta/sigma))? If so, then the above code is accurate. If not, then how do I calculate (-Xi(beta/sigma))?

Thank you for your help,

1 REPLY 1
SteveDenham
Jade | Level 19

In PROC LOGISTIC, xbeta contains the estimates of the linear predictor.  It is not scaled by sigma, I beleve you will have to divide through by the pooled error estimate to get what you need.

Steve Denham

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 5490 views
  • 2 likes
  • 2 in conversation