Alternative for two way anova

6 views (last 30 days)
Yuexun Tian
Yuexun Tian on 29 Oct 2020
Commented: Jeff Miller on 30 Oct 2020
I am trying to analyze the temperature and humidity effects on insect development time. Because the data does not meet the normality assumption in anove, I am trying to find the alternative methods. I have checked Friedman's test, it only evaluate one factor effects (column effects) and do not evaluate the interaction of column and raw. Kruskal-Wallis test only evaluate one factor as well. Is there a method to test two factors and their interaction effects for non-normal distributed data?

Accepted Answer

Jeff Miller
Jeff Miller on 29 Oct 2020
One option is to ignore the problem and do ANOVA despite the non-normality. ANOVA is pretty robust with respect to normality violations, so this may be the best option if the non-normality is not too extreme.
A second option is to transform your DV so that it is more normally distributed. If the scores are skewed with a long tail of large values, for example, a square-root or log transform might make the data look pretty normal, so then you could do ANOVA on the transformed scores.
A third option is to replace all scores with their ranks relative to the whole sample, e.g., ranks 1-N where N is the number of scores, and then do ANOVA on the ranks.
With options 2 & 3, you have to think really hard about what an interaction means, since you are distorting the scale of your scores, then averaging, then taking differences of differences. There's no problem if it is a cross-over interaction, but if you are just getting quantitative changes in effect sizes (e.g., factor A effect larger at B1 than at B2), then it may not be clear whether a larger effect in the transformed/ranked scores really reflects a larger effect in the original scores, due to the nonlinear transformation.
  2 Comments
Yuexun Tian
Yuexun Tian on 30 Oct 2020
Thank you!
My data is extrame skewed and I have done transformations with my data but they are still not normally distributaed. I will think about the third option.
Also I saw other people using mix linear model to analyze this kind of data in SAS (Proc GLMMIX). Do you know if that's appropriate for my data? Can I do it in Matlab?
Jeff Miller
Jeff Miller on 30 Oct 2020
Matlab provides the function 'fitlme' to fit linear mixed effects models, but I don't know if this is appropriate for your data or how it relates to the SAS function you mentioned.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!