R的方差分析

时间:2012-04-12 00:59:29

标签: r

所以我有一个有两列的表;第一个处理和第二个响应,称为V1和V2(默认值)。我试过了

aov.ex2 = aov(V2~V1, data=ex2)
summary(aov.ex2)

并且有一些非常奇怪的东西 - 只有1 d.f.尽管应该有30 - 1 = 29 d.f.治疗方格的总和。做V1~V2会给我相同的结果。我做错了什么?

2 个答案:

答案 0 :(得分:4)

试试这个

  aov.ex2 = aov(V2~factor(V1), data=ex2)
    summary(aov.ex2)

答案 1 :(得分:0)

扩展@ MYaseen208的回复:

在过去,计算机程序并不能很好地处理非数字数据,因此将分类变量重新编码为数字变量以将数据输入计算机是很常见的。然后,这些程序需要用户告诉他们这个看起来像数字变量的变量实际上代表了类别。这可以通过以下两种方式之一完成:作为数据的属性或分析的属性。 R采用的方法是这样的事情是数据的属性而不是分析(这对我来说更有意义)所以aov函数没有任何参数来指定哪些预测变量是分类的,而是查看确定这一点的数据。由于aov函数也可以对协方差和更一般的线性模型进行分析,因此它可以接受分类和数字预测因子(因此不会假设一切都是绝对的)。你没有告诉我们你是如何输入你的数据的,但不管你做了什么,它看起来像R的数字数据,你从来没有告诉它,所以它一直假设它是数字的。你需要告诉R它是分类的factor(V1)。可以在每次分析时执行此操作,但最好在创建/读取数据时执行一次,或者在ex2$V2 <- factor(ex2$V2)之后立即执行此操作,以便对此数据的每个分析/图表/摘要都意识到它是分类并适当地对待它。