Solved – Normality test for discrete data / ordinal scale (1-2-3-4)

anovanormality-assumptionordinal-data

My test model is:

  • 3 factors x -> x1 (3 levels), x2 (2 levels), x3 (2 levels), nominal scale
  • 4 dependent var y -> ordinal scale (1-2-3-4)
  • 18 participants
  • balanced
  • –> 12 factor-levels x 18 x 4 = 216 (measurements) x 4 (y) = 864 values

I assume using 4 times a 3-factorial ANOVA in R Studio for each y:

y1.aov = aov(y1 ~ x1*x2*x3)
y2.aov = aov(y2 ~ x1*x2*x3)
y3.aov = aov(y3 ~ x1*x2*x3)
y4.aov = aov(y4 ~ x1*x2*x3)

Before I want to test assumptions normal distribution and equal variance. However I can't test normal distribution successfully because the data is discrete: y_n is element of {1,2,3,4}. Thus normal distribution is rejected:

shapiro.test(y1) # p-value = 2.21e-13
ad.test(y1) # p-value < 2.2e-16

I searched all over the internet but could not find a proper answer. I just know a lot of researchers performing ANOVA to similar models (ordinal scale). How can I test the assumption properly?

Best regards

Best Answer

Ordinal data cannot be normal. OLS regression does not assume that the variables are normally distributed (it makes assumptions about the errors) but it does assume that teh dependent variable is continuous.

When your dependent variable is ordinal, you should not do regular regression, you should do ordinal logistic regression (at least, that's a good starting place).