Dealing with Heteroscedasticity in ANOVA

I need to perform an ANOVA on percentages data. I have 3 factors: TREATMENT, SAMPLE and DaysAfterTreatment (DAT). Treatment has 3 levels: Control, A, B. SAMPLE has 2 levels: SampleA, SampleB. DAT has 3 levels: DAT15, DAT30 and DAT90.

Here are values of my variable:

$Var [1] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 [34] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 0.01 0.01 0.01 0.02 0.02 0.03 0.03 0.03 0.04 0.04 0.04 0.04 0.05 0.05 0.05 [67] 0.06 0.06 0.06 0.07 0.08 0.10 Tried angular, square root, square root +0.5 and rank transformation but with no success. Levene's test always indicates a condition of heteroskedasticity. I don't know what to do with this data set. Any help would be appreciated. • Are your percentages count data divided by some total count, or are they continuous percentages (like the proportion of cream in milk)? – Glen_b -Reinstate Monica Nov 24 '14 at 9:46 2 Answers Rather than transform, I'd suggest considering models that are actually more likely to be suited for your data. Count proportions are often modelled with binomial GLMs, for example. They don't assume constant variance, but a variance appropriate to binomial count proportion model. These may model the heteroskedasticity in your data well enough. It may be that for some of your groups your data is all-zero, which may present some difficulties even with binomial GLMs; you may need some form of regularization in that case. The data you give for your response variable can be tabulated: Value | Freq. Percent Cum. ------------+----------------------------------- 0 | 50 69.44 69.44 .01 | 4 5.56 75.00 .02 | 2 2.78 77.78 .03 | 3 4.17 81.94 .04 | 4 5.56 87.50 .05 | 3 4.17 91.67 .06 | 3 4.17 95.83 .07 | 1 1.39 97.22 .08 | 1 1.39 98.61 .1 | 1 1.39 100.00 ------------+----------------------------------- Total | 72 100.00 That's one big spike at 0 and nine smaller spikes. No transformation worth thinking about will do anything other than leave your big spike as another big spike on some transformed scale. A transformation is just a mathematically defined mapping; it's not a washing machine that cleans your data of unwanted features. More crucially, although you report your data as being percentages, these look like proportions with bounds$[0, 1]\$. For such data, normality is not even an ideal. @Glen_b's answer says more helpfully.

Note that without seeing data on your factors, the extent of heteroscedasticity can't be judged directly by us, but the distributions can't be less spiky.

This would not go well in a comment, and the point that a big spike can only be transformed into another big spike arises commonly in this forum, so making the point emphatic may help others too.