Запрограммируйте условный результат на основе результата aov()
У меня есть набор данных со многими уровнями факторов. каждый фактор имеет левую и правую сторону, и есть несколько записей для комбинации фактор / сторона. Так это выглядит примерно так:
Factor_type Side Value
factor1 L 134
factor1 R 112
factor2 L 166
factor2 R 72
Я перебираю каждый фактор и выполняю aov()
анализ:
factorset <- c("factor1", "factor2", "factor3")
for(f in factorset){
x <- mydata %>% filter(Factor_type == f) #creates a dataset of only desired factor
a <- aov(data = x, formula = Value ~ Side)
Я хотел бы знать, как / если я могу создать условие из анализа AOV. по существу:
if(a == IS SIGNIFICANT){
ggplot(x, aes(x = Side, y = Value)+geom_boxplot()
}
1 ответ
Посмотрите на игрушечный пример. Я сгенерирую некоторые данные
> x<-gl(5,5)
> y<-rnorm(25)
И беги aov
:
> a<-aov(y~x)
summary
показывает значение р в Pr(>F)
колонка:
> summary(a)
Df Sum Sq Mean Sq F value Pr(>F)
x 4 1.834 0.4584 0.519 0.722
Residuals 20 17.651 0.8825
Вы можете получить к нему доступ напрямую с помощью:
> summary(a)[[1]][1,5]
[1] 0.722432
Итак, ваш кусок кода:
if(summary(a)[[1]][1,5]<0.05){
ggplot(x, aes(x = Side, y = Value)+geom_boxplot()
}