2012-04-12 91 views
1

所以我有一个两列的表;第一种治疗方法和第二种治疗方法,称为V1和V2(默认)。我试图R中的方差分析

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

,并得到了真正奇怪的东西 - 只有1个D.F.对于处理的平方和,尽管应该有30 - 1 = 29 d.f.做V1~V2给了我相同的结果。我究竟做错了什么?

回答

0

为了扩大对@ MYaseen208的回应:

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

4

试试这个

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