I am trying to determine if there is possibility unmeasured bias in my model. I have a continuous dep variable and binary ind variable which is TREATED (0/1). I want to determine if I have unmeasured bias. I don't have proc qlim so I need to create an inverse Mills ratio and run it through a GLM.
I first create a PROBIT model and output the estimated probabilities (prob) of being treated.
Next, I calculate the Inverse Mills Ratio:
IMR = pdf('NORMAL', prob ) / cdf('NORMAL', prob ); /*inverse mills ratio*/
Then run my GLM:
proc glm data = weighted_PS;
class RHS;
model LHS = RHS IMR/ ss3 solution;
weight weights;
run;
Is this correct?
You are correct that PROC QLIM is the most efficient, accurate and simplest way to accomplish Heckman's 2-step estimator.
You will need to correct your standard errors in your second stage. See the QLIM documentation. SAS/ETS(R) 13.2 User's Guide
You might just want to use PROC REG with some HCCME= options to correct your standard errors. SAS/STAT(R) 9.2 User's Guide, Second Edition
But you are close as is.
You are correct that PROC QLIM is the most efficient, accurate and simplest way to accomplish Heckman's 2-step estimator.
You will need to correct your standard errors in your second stage. See the QLIM documentation. SAS/ETS(R) 13.2 User's Guide
You might just want to use PROC REG with some HCCME= options to correct your standard errors. SAS/STAT(R) 9.2 User's Guide, Second Edition
But you are close as is.
SAS is headed back to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team.
Interested in speaking? Content from our attendees is one of the reasons that makes SAS Innovate such a special event!
Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.
Find more tutorials on the SAS Users YouTube channel.