BookmarkSubscribeRSS Feed
muzlowe
Calcite | Level 5

I've been trying to replicate the results of a logistic regression programmed using Proc LOGISTIC with GENMOD. I believe the options and model specification are the same but some of my parameter estimates are differing around the 4th decimal. The code using Proc LOGISTIC is:

 

proc logistic data = mydata descending;

  class treat (param = ref ref = "A") country / param = glm;

  model resp = treat country var1;

run;

 

Code for Proc GENMOD is:

 

proc genmod data = mydata descending;

  class treat (param = ref ref = "A") country / param = glm;

  model resp = treat country var1 / dist = bin link = logit;

run;

 

Is there any reason why the results would differ using the above code? I'm using SAS v9.4.

 

Thanks

 

1 REPLY 1
Rick_SAS
SAS Super FREQ

They use different algorithms to maximize the likelihood, so you might not be able to get an exact match.  BY default, PROC LOGISTIC uses a Fisher scoring algorithm, whereas GENOMD uses a ridge-stabilized Newton-Raphson algorithm.  You could try setting TECHNIQUE=NEWTON in the MODEL statement for PROC LOGISTIC.

 

Another difference is that GENMOD estimates a scale parameter. You could try using the NOSCALE option and see if that helps.

 

Personally, I wouldn't worry much about differences in the fourth decimal place, since that is probably much smaller than the standard errors.

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 1256 views
  • 1 like
  • 2 in conversation