Programming the statistical procedures from SAS

Fitting OLS and GLM with repeated observation

Reply
Contributor
Posts: 39

Fitting OLS and GLM with repeated observation

Hi,

I am comparing different estimation methodologies for a project I am working on.

1. The first model I am estimating is an ols, To get robust standard error for the correlated observations, I used genmod. But then someone told me the genmod routine for calculating robust standard errors are not entirely correct and suggested using glimmix. So I tried that too. My understanding is that the parameter estimates should be same, but I am not getting that. I tried different estimation within glimmix but that did not give similar estimates either. Any thoughts?

My code:

proc genmod data= filename ;

class id;

model log_y = x1 x2 x3 x4 ;

repeated subject=id/type=cs printmle ;

proc glimmix data = filename ;

class id ;

model log_y = x1 x2 x3 x4 / s ;

random _residual_ /subject=id type=cs ;run ;

2. The second model I am estimating is GLM. I used genmod for that as well. To be able to use the same routine for both, I re-estimated glm using glimmix and again I get different parameter estimates. So, any explanation for that will be helpful. my codes are below.

My code for GLM:

proc genmod data= filename ;

class id;

model y=  x1 x2 x3 x4  / dist=gamma link=log;

repeated subject= id/type=cs printmle;

proc glimmix data = filename;

class id ;

nloptions maxiter= 50;

model y=  x1 x2 x3 x4  / dist=gamma link=log;

random _residual_ /subject= id type=cs ;

run ;

Thank you very much.

Respected Advisor
Posts: 2,655

Re: Fitting OLS and GLM with repeated observation

When you say you get different estimates, can you present examples?  I mean, are the differences in the second or third decimal place, or are they grossly different.

I have been able to get estimations between GENMOD and GLIMMIX to "match", but there is occasionally a trivial difference in the estimates.  Be sure to check the log likelihood values and the number of observations analyzed as well.

Steve Denham

Contributor
Posts: 39

Re: Fitting OLS and GLM with repeated observation

Hi Steve,

Thanks for your input. I noticed the differences are at the second decimal places for some and at the third decimal for others. An example given below:

OLS                    GENMOD           GLIMMIX

intercept       5.0117                   5.0272

x1               0.5870                    0.5464

x2               -0.0216                  -0.02112

x3               2.2678                   2.2892

GLM                   GENMOD           GLIMMIX

intercept       5.4702                  5.5124

x1               0.8672                   0.8738

x2               -0.0165                  -0.01434

x3               2.0139                   1.9925

Also, number of observations are same in both, but I cannot compare log-likelihood since GENMOD with repeated option does not give Log-likelihood values.

Could it be the type option within the random statement ? When I do the two methods without the random or repeated options, the answers are same.

- CD

Respected Advisor
Posts: 2,655

Re: Fitting OLS and GLM with repeated observation

Deep water here, but...

Look at QICu for GENMOD and AIC for GLIMMIX.  Since these are essentially -2 loglikelihood + 2*number of parameters, and the number of parameters should be the same for both approaches, then the difference between these would be the difference in the log likelihoods (or quasi-likelihoods).  And for GLIMMIX, with an R-side approach, the information criterion is based on a pseudo-likelihood rather than a quasi-likelihood, but in this case they should be close.

Try changing the optimization technique in GLIMMIX, with an NLOPTIONS statement.  GENMOD uses a ridge stabilized Newton-Raphson method, so add the following to your GLIMMIX codes:

nloptions tech=nrridg;

to see if the results are any closer.

Steve Denham

Contributor
Posts: 39

Re: Fitting OLS and GLM with repeated observation

Hi Steve,

I did as you suggested. But the tech=nrridg and the default method gave the same parameter estimates.

At the end of the day, I wanted to make sure the estimation method I am using is doing what I intend it to do, that is getting robust standard error for OLS and estimating GLM with subject correlation. Before I used genmod for that and now I am using GLIMMIX with random residual option. Am I ok to use GLIMMIX for this purpose? It would have been nice if I could test these two approaches giving same results, but somehow I am not getting this.

Thanks for all your help.

Respected Advisor
Posts: 2,655

Re: Fitting OLS and GLM with repeated observation

One way to get robust standard errors in GLIMMIX is to specify ddfm=kr2 in the MODEL statement as an option.  The Kenward-Roberts adjustment uses Satterthwaite degrees of freedom, and the methods of Prasad-Rao-Kackar-Harville-Jeske to adjust the variance-covariance matrix.

Steve Denham

Ask a Question
Discussion stats
  • 5 replies
  • 375 views
  • 0 likes
  • 2 in conversation