我有一个包含许多因子水平的数据集。每个因子都有左侧和右侧,并且因子/侧边组合有多个条目。所以看起来像这样:
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()
}
答案 0 :(得分:1)
看玩具的例子。我会生成一些数据
> x<-gl(5,5)
> y<-rnorm(25)
并运行aov
:
> a<-aov(y~x)
summary
在Pr(>F)
列中显示p值:
> 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()
}