by stringplayer_2 » Sat, 25 Mar 2006 01:52:03 GMT

--- U Eson < XXXX@XXXXX.COM > wrote:

> Dear all,
> Is there an easy explanation why the REPEATED statement has
> disappeared
> when the macro GLIMMIX was transferred into a genuine procedure?
> Ulf

I can't say definitively, but my guess is that the decision to
do away with the REPEATED statement in the procedure was to
discourage use of R-side random effects for the nonlinear models
fitted by GLIMMIX. That might be a little bit strong, since
R-side random effects can still be obtained with the GLIMMIX
procedure. Perhaps it would be better to say that the authors
wanted to encourage thoughtful use of R-side random effects.

Specifying R-side random effects yields a marginal rather than
a conditional effects model when you have a nonlinear model.
For Gaussian response with identity link function, a random
intercept model can also be fit employing a compound symmetric
residual covariance structure. Thus, for Gaussian response,
the following two models produce the same point estimates and
standard errors:

/* Random intercept model */
proc mixed;
class ID;
model y = <fixed effects> / s;
random intercept / subject=id;

/* Compound symmetric residual covariance structure */
proc mixed;
class ID;
model y = <fixed effects> / s;
repeated / subject=id type=cs;

This equivalence does not hold when you have a nonlinear model.
Thus, the two models presented below produce different results.

/* Random intercept model */
proc glimmix;
class ID;
model y = <fixed effects> / s dist=bin;
random intercept / subject=id;

/* Compound symmetric residual covariance structure */
proc glimmix;
class ID;
model y = <fixed effects> / s dist=bin;
random _residual_ / subject=id type=cs;

The latter model bears more similarity to a GEE model than to
a random effects model. The folks at SI make available to you
the capacity to estimate these marginal random effect models.
However, they have attempted to refocus your attention so that
you are aware of the different interpretations of these models.

I would note, too, that when you have a nonlinear model, the
residuals represent a multiplicative overdispersion effect. The
GLIMMIX documentation does state that "If overdispersion arises
from correlations among the observations, then you should
investigate more complex random effects structures." Again, this
conforms with discouraging use of the REPEATED statement for
adding a correlation structure to the responses.

At least, that is my impression of the reasoning behind elimination
of the REPEATED statement and replacing the REPEATED statement
with a RANDOM _RESIDUAL_ statement. It could be something more
mundane, such as that it is easier to support the procedure
with only the RANDOM statement. However, I really don't believe
that to be the case. In fact, given that residual effects
enter a different part of the model, I believe that it is more
burdensome to write the code with just the RANDOM statement.
That plus the effort expended in the GLIMMIX documentation to
instruct on the implications of use of R-side random effects
leads me to my interpretation of encouraging thoughtful use of
R-side residuals.


Dale McLerran
Fred Hutchinson Cancer Research Center
Ph: (206) 667-2926
Fax: (206) 667-5977

Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around

Similar Threads


2. Proc Glimmix without Random _residual_ VS Glimmix Macro

3. PROC GLIMMIX vs %GLIMMIX - Lost the convergence!


Hello GLIMMIX experts,

We are trying to convert the following %GLIMMIX call (SAS 9.1.3):

%glimmix( data = datap4,
          stmts = %str(
                       class study atrtn_1;
         model Yesno = atrtn_1/solution;
                       random study;
                       estimate ' 13v vs 7v' atrtn_1 -1 1 /cl; ),
                       error = binomial,
         link = logit,
         freq = x

to what we thought was its equivalent using PROC GLIMMIX also in SAS 9.1.3:

proc glimmix data=datap4 abspconv=1e-8;
  class study atrtn_1;
  model yesno = atrtn_1 / link=logit dist=binomial solution;
  freq x;
  random study;

However, the p-values produced by PROC GLIMMIX differ from those coming
from %GLIMMIX by at least 0.01.  Are we missing or misstating one of the
options?  We're fairly confident the p-values coming from %GLIMMIX are

Thanks for any help you can provide,

Nancy Brucken


6. Question about %glimmix and/or proc glimmix

Hi guys,

I would like to create a SAS code using either %glimmix or proc
glimmix (though I am more familiar with %glimmix)

here is how my data looks like
I have a list of variable names such as d01-d07

and I would like to have all the variables under model statement with
intercept and one variable at a time under random statement... in this
case, which means, I will have to have 7 separate glimmix runs

I've tried to create a SAS macro with %do i=1 %to 7 with %glimmix,
however it only gave me the result on i=1, is there anyone could help
me out on this? thanks! or maybe gives me some idea on how to program
a DO LOOP with glimmix procedure! thanks again!

here is my %glimmix program:

%macro test(n=7,);
%Do i=1 %to &n;
      class classroom;
      model III/NNN = D01 D02 D03 D04 D05 D06 D07

	/ solution ddfm=bw;

	random int D0&i/sub = classroom s;

	ODS OUTPUT 				solutionr=blupz&i;
   error = binomial,
   link = logit
%mend test;

7. PROC GLIMMIX; dist=binary vs dist=binomial

8. Error occured in "proc mianalyze" used after %glimmix macro

Hi, there,

When I ran "proc mianalyze" after %glimmix macro, there was an error
information in log file which I could not figure out:

ERROR: The variable Col5 is not in the COVB= data set.

I had 3 independent variables in the model. I don't know what is
"col5" which I never created. Anyone has idea on that?

Thanks a lot. Merry Christmas!