With the caveat that I haven't ever run a model with ezANOVA()
, but I think this error message has to do with your factors not being crossed and doesn't have anything to do with missing values in your response variable.
Crossed factors means that every level of one of your factors is present with every level of the other in your dataset. From skimming through your dataset, I don't think your two within
factors are crossed. So when ezANOVA()
tries to fit an interaction with those variables it can't/won't do so.
You can check which combinations of the two factors that aren't present in your dataset (i.e., check which cells is missing data
) using, e.g., table()
.
Here's an example of checking if the two factors are crossed using the mtcars
dataset. If cyl
and gear
were crossed then all combinations of these would have at least one observation. You can see that there are no 4 gear cars with 8 cylinders; these factors aren't crossed.
with(mtcars, table(cyl, gear) )
gear
cyl 3 4 5
4 1 8 2
6 2 4 1
8 12 0 2