ANOVA:自由度几乎都等于1

问题描述 投票:6回答:1

我有一个像这样开始的数据集:

> d.weight
    R   N   P  C D.weight
1   1   0   0 GO     45.3
2   2   0   0 GO     34.0
3   3   0   0 GO     19.1
4   4   0   0 GO     26.6
5   5   0   0 GO     23.5
6   1  45   0 GO     22.1
7   2  45   0 GO     15.5
8   3  45   0 GO     23.4
9   4  45   0 GO     15.8
10  5  45   0 GO     42.9
...

依此类推。

  • R被复制,其中有5个(1-5)。
  • [N是氮水平,也有5(0、45、90、180、360)。
  • [P是磷水平,也有5(0、35、70、140、280)。
  • [C是植物组合,有4个(GO,GB,LO,LB)。]]
  • D.weight是干重,以克为单位。
  • 但是,当我进行方差分析时,我得到了错误的自由度。我通常在全部数据的子集上运行方差分析,但让我们做一下我本来不会做的分析,以便您可以看到几乎所有的Df(自由度)都是错误的。

> example.aov=aov(D.weight ~ R+N+P+C, data=d.weight)
> summary(example.aov)
         Df Sum Sq Mean Sq F value  Pr(>F)    
R             1   1158    1158   9.484 0.00226 ** 
N             1    202     202   1.657 0.19900    
P             1  11040   11040  90.408 < 2e-16 ***
C             3  41032   13677 112.010 < 2e-16 ***
Residuals   313  38220     122

所以,基本上,唯一正确的是C因子。是因为它是字母而不是数字吗?

[我发现某个地方,如果我用每一项写interaction(),我都会得到正确的Df,但是我不知道这总体上是否正确。例如:

> example.aov2=aov(D.weight ~ interaction(R)+interaction(N)+interaction(P)+interaction(C), data=d.weight)
> summary(example.aov2)
                Df Sum Sq Mean Sq F value   Pr(>F)    
interaction(R)   4   7423    1856  19.544 2.51e-14 ***
interaction(N)   4    543     136   1.429    0.224    
interaction(P)   4  13788    3447  36.301  < 2e-16 ***
interaction(C)   3  41032   13677 144.042  < 2e-16 ***
Residuals      304  28866      95

我尝试使用C因子进行尝试,只是看它是否弄乱了任何东西:

> example.aov3=aov(D.weight ~ C, data=d.weight)
> summary(example.aov3)
             Df Sum Sq Mean Sq F value Pr(>F)    
C             3  41032   13677   85.38 <2e-16 ***
Residuals   316  50620     160                   
> 
> example.aov4=aov(D.weight ~ interaction(C), data=d.weight)
> summary(example.aov4)
                Df Sum Sq Mean Sq F value Pr(>F)    
interaction(C)   3  41032   13677   85.38 <2e-16 ***
Residuals      316  50620     160

而且看起来也一样。我应该到处添加interaction()吗?

这是我的荣誉论文!我的顾问不知道如何使用R,我也不知道如何使用其他任何东西,所以我在这里。我有一个像这样开始的数据集:> d.weight R N P C D ....

r anova
1个回答
5
投票

R通过检查变量是numeric还是factor变量,确定将变量视为分类变量(ANOVA类型分析)还是连续变量(回归类型分析)。最简单的是,您可以通过

© www.soinside.com 2019 - 2024. All rights reserved.