Марек прав, это проблема с данными. Теперь будьте осторожны, если вы используете [as.numeric (ants $ Turbidity], так как он всегда будет положительным. Он дает уровни факторов (от 1 до длины (ants $ Turbidity)), а не числовые факторы.
Попробуйте это:
tt <- as.numeric(as.character(ants$Turbidity))
which(!is.na(tt))
Это даст вам список индексов, где значение не было числовым в первую очередь. Это должно позволить вам сначала очистить ваши данные.
например:
> Turbidity <- factor(c(1,2,3,4,5,6,7,8,9,0,"a"))
> tt <- as.numeric(as.character(Turbidity))
Warning message:
NAs introduced by coercion
> which(is.na(tt))
[1] 11
Вы не должны использовать структуру as.numeric(as.character(...))
для преобразования проблемных данных, так как она будет генерировать NA, которые будут мешать остальным. Например:
> Turbidity[tt > 5]
[1] 6 7 8 9 <NA>
Levels: 0 1 2 3 4 5 6 7 8 9 a