如何对数据框的所有列进行单向方差分析?

How to do an one way anova with all columns of data fame?

我想用不同站点的丰度数据做方差分析,我想知道什么是正确的脚本编写方法,因为所有带有 aov 函数的示例都与公式相关,但我不确定该公式考虑了比较其均值的所有列。

以下数据是我用来尝试进行测试的方法的一个示例。但是列中没有分类变量,因此,我确信这种方式是错误的。

感谢您的帮助

set.seed(200)
D <- data.frame(a=sample(15),b=sample(15), c=sample(15))

A<-aov(a~c, data = D)

您需要先reshape the data.frame from wide to long format

以下使用外部包 reshape2 将数据从宽格式重塑为长格式。

molten <- reshape2::melt(D)
head(molten)

model <- lm(value ~ variable, data = molten)
anova(model)