## glimmix and residual problem

Solved
Occasional Contributor
Posts: 9

# glimmix and residual problem

I am doing analysis of a trial testing satisfaction in VA scale from 0 to 100 in a cross over trial. Patients were assigned to two treatment and followed for 12 months. After the 12 month the treatment was changed and followed for another 12 months.

Measures of satisfaction were perfomed at the first week, then at 3 months , 6 months and 12 months (4 times).

Distribution was not normal very skewed to the right.  I tried some different distributions such as exp and poisson, but residuals are not randomly distributed around zero, specially a the end it positive residuals drasticlly decreases to zero. Independent of the distribution I used , even normal residuals are very similar.

Q2 is satisfaction.

This is what I am using.
proc glimmix plots = all ;
class paciente treat (ref = first) time (ref= first);
model q2 = treat | time /solution link = log s dist = poisson ;
random int /subject = paciente;

covtest 'var(paciente) = 0' 0 .;
run;

Would overdispersion be a problem and a beta binomial be recommended?

Thanks so much.

Accepted Solutions
Solution
‎09-26-2016 08:04 AM
Posts: 2,655

## Re: glimmix and residual problem

Try the following:

``````proc glimmix plots = all ;
class paciente treat (ref = first) time (ref= first);
scaledq2=q2/100;
model scaledq2 = treat | time /solution  s dist = binomial ;
random int /subject = paciente;
covtest 'var(paciente) = 0' 0 .;
run;``````

You could also try dist=beta, but since you actually have values at 1, it isn't going to like those much.

I don't think you need to go to the beta-binomial.  I don't see overdispersion here, but there are heavy tails, so I could be wrong.  If the straight binomial doesn't do well, then you may have to program in the variance function and link function.

Steve Denham

All Replies
Solution
‎09-26-2016 08:04 AM
Posts: 2,655

## Re: glimmix and residual problem

Try the following:

``````proc glimmix plots = all ;
class paciente treat (ref = first) time (ref= first);
scaledq2=q2/100;
model scaledq2 = treat | time /solution  s dist = binomial ;
random int /subject = paciente;
covtest 'var(paciente) = 0' 0 .;
run;``````

You could also try dist=beta, but since you actually have values at 1, it isn't going to like those much.

I don't think you need to go to the beta-binomial.  I don't see overdispersion here, but there are heavy tails, so I could be wrong.  If the straight binomial doesn't do well, then you may have to program in the variance function and link function.

Steve Denham

Occasional Contributor
Posts: 9

## Re: glimmix and residual problem

Thanks

I did not worked , so I am trying now a non parametric solution I found in R the (nparld). package. In the original paper authors mention a macro in SAs but I was not able to find it.

Thanks

Maria

☑ This topic is solved.