I have an experiment with three factors, say two machine vendors (factor: vendor) and each machine has two 'knobs' (factors: A, B) with each three levels. The measured output is continuous, and is measured independently 8 times for each combination of factors. The design is thus quite balanced, and there are 8*2*3*3=144 measurements.

The main questions is: Do both machines differ significantly in their output?

A three-way ANOVA would possibly work, but after fitting it, i have some non-normality in the residuals, tested with Shapiro-Wilk (with p<0.001). Also the groups are heteroscedastic, as the corresponding Levene test shows (also p<0.001).

I am confused what statistical model to use. Initially i thought a linear mixed model might be applied, but then both factors A,B only have 3 levels and probably most people would say that they should not be taken as random factors. I'd like to have a non-parametric ANOVA test, but which is the correct one? Personally i dislike the idea of transforming the outcome. Also i wonder if i should include all interactions or not.

Can anyone point me to the right test? Thanks!

Edit: As I use R, it would be great if I also could get a hint to the library to use.

Edit2: Here are some plots.

histogram of residuals

qqplot of residuals

groups plotted

residuals of anova

  • 2
    $\begingroup$ Can you post figures showing the non-normality and heteroscedasticity? Those may help identify the best course of action. $\endgroup$ – mkt Dec 8 '17 at 21:23
  • $\begingroup$ @mkt I've added the plots, if you need other ones, just say so. I forgot to add: I also removed a few outliers by using Cook's method, rought 8 of them. $\endgroup$ – complexM Dec 9 '17 at 0:05
  • $\begingroup$ I wonder if the nlme::gls function will at least take care of the variance problem: fit = gls (o ~ vendor*A*B, data = data, weights=varIdent(form=~1|vendor*A*B)) I could then argue that the deviation from normality is not very large and the design is balanced (up to the removal of outliers). Is this a possibility? $\endgroup$ – complexM Dec 10 '17 at 0:06
  • $\begingroup$ In lack of other options i used now nlme::gls with using the weights to model the variance among the groups by means, which emmeans for posthoc tests, see also [link]stats.stackexchange.com/questions/97098/… $\endgroup$ – complexM Dec 18 '17 at 22:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.