BookmarkSubscribeRSS Feed
jdserbon
Calcite | Level 5

I need to reproduce the identical parameter estimates with a clustered or robust standard errors.  I have not been able to reproduce the results.  The first model is the model I am trying to reproduce by utilizing other PROCS in order to calculate the clustered variance.  Any recommendations out there?!?


Model need to reproduce with clustered or robust standard errors
proc logistic data = regdatas;
  title 'Measure 5';
  class quarter /param = ref ref = first;
  model meas_5_num (event = '1')=  treated female nonwhite age_at_discharge quarter score_community;
  strata prov_name;
  where (prov_ace_crd = 1 or prov_tru_crd = 1) & quarter ne '' & prov_name ne '' & meas_5_denom = 1 &
  Procedure_group in ('CARDIAC DEFIBRILLATOR IMPLANT','CARDIAC PACEMAKER IMPLANT OR REVISION','CARDIAC VALVE AND OTHER MAJOR CARDIOTHORACIC',
  'CORONARY ARTERY BYPASS GRAFT','PERCUTANEOUS CORONARY INTERVENTION');
  by procedure_group;
run;

I have tried -

proc mixed data = regdatas method=REML empirical;
  title 'Measure 5';
  class quarter prov_name;
  model meas_5_num =  treated female nonwhite age_at_discharge quarter score_community / solution influence;
  random int / sub=prov_name g gcorr;
  where (prov_ace_crd = 1 or prov_tru_crd = 1) & quarter ne '' & prov_name ne '' & meas_5_denom = 1 &
  Procedure_group in ('CARDIAC DEFIBRILLATOR IMPLANT','CARDIAC PACEMAKER IMPLANT OR REVISION','CARDIAC VALVE AND OTHER MAJOR CARDIOTHORACIC',
  'CORONARY ARTERY BYPASS GRAFT','PERCUTANEOUS CORONARY INTERVENTION');
  by procedure_group;
run;


proc genmod data = x descending;
  class quarter (param=ref ref=first) prov_name;
  model meas_5_num = treated female nonwhite age_at_discharge quarter score_community / dist=binomial link=logit noint;
  repeated subject=prov_name / type=cs corrw;
  by procedure_group;
run;

proc glimmix data = x empirical=classical;
  class quarter prov_name;
  model meas_5_num = treated female nonwhite age_at_discharge quarter score_community / dist=binomial solution;
  random intercept / subject=prov_name;
  by procedure_group;
run;

proc surveylogistic data = x;
  title 'Measure 5';
  class quarter / param=ref ref=first;
  model meas_5_num (event='1') = treated female nonwhite age_at_discharge quarter score_community / noint;
  strata prov_name;
  by procedure_group;
  cluster prov_name;
run;

1 REPLY 1
SteveDenham
Jade | Level 19

I'll be curious about the answers you receive here.  My inclination is that the latter two procs will be the most likely to yield what you are looking for.  However, be aware that the estimates for glimmix are conditional, rather than marginal, so they may not match.  A good read on this would be Stroup (2013) Generalized Linear Mixed Models, Ch. 3.5.

Steve Denham

sas-innovate-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 1 reply
  • 626 views
  • 0 likes
  • 2 in conversation