I'm analysing reaction time data from a linguistic experiment (a variant of a lexical decision task). To ascertain that the data was normally distributed, I used *shapiro.test *for each participant (see commands below), but only one out of 21 returns a p value above p.0 05.
> f = function(dfr) return(shapiro.test(dfr$Target.RTinv)$p.value)
> p = as.vector(by(newdat, newdat$Subject, f))
> names(p) = levels(newdat$Subject)
> names(p[p < 0.05])
Removing a few outliers per subject doesn't make a difference, and aggressive" removal of outliers (done by subject, for each of the 6 conditions ) still results in non-normally distributed data by subject.
Does this invalidate any attempt at multi-level modelling?