Запрограммируйте условный результат на основе результата 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()
}
Другие вопросы по тегам