BookmarkSubscribeRSS Feed
batecy36
Fluorite | Level 6

Hello,

 

First time poster. I am using proc glimmix for a GLMM and a binomial distribution. The model cannot be optimized even when I set the maxopt=100. I was thinking that my next step would be to use a transformation on my response variable and then back transform it. I would use normal distribution when doing this obviously. Does this should like a reasonable approach here? What type of transformation would I use here being its a binary variable (1 or 0) and what's the added code I need? Currently I have:

 

proc glimmix data=obj_1_emergence plots=residualpanel maxopt=100;
class Inoculum Moisture Fungicide Block Rep;
model Emergence=Inoculum|Moisture|Fungicide/ddfm=kr dist=normal;
random Block Block*Inoculum Rep(Block*Inoculum*Moisture);
lsmeans Inoculum|Moisture|Fungicide/lines;
lsmeans Fungicide*Inoculum/lines slicediff=Inoculum slicediff=Fungicide plots=(mean(clband connect sliceby=Fungicide));
run;

 

Thanks,

T

3 REPLIES 3
Rick_SAS
SAS Super FREQ

If your response variable is 0/1, then you have a BINARY response and should use the DIST=BINARY option. (The DIST=BINOMIAL option is often used for events/trials syntax.) 

 

Regarding your idea, every transformation of a binary variable will result in another binary variable, so, no, you cannot use a transformation to somehow convert the problem to one that can use DIST=NORMAL.

batecy36
Fluorite | Level 6

So I actually have a split-split plot with subsampling, 6 per true replicate. I think I should be able to convert to a decimal between 0 and 1 by summing my 0 and 1's and dividing by 6. I then could run this as normally distributed and do a log transformation if need be? I attempted to use DIST=BINARY to no avail. The model will not be optimized unless I run it as normally distributed. I understand it is not ideal but I'm not sure what the better alternative is.

Rick_SAS
SAS Super FREQ

Did you try event/trial syntax?

 

Define Success = sum of 1s

Define nTrials = 6

Then use

MODEL Success/nTrials = .... / dist=binomial;

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

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
  • 3 replies
  • 672 views
  • 0 likes
  • 2 in conversation