【问题标题】:How to perform single factor ANOVA in R with samples organized by row?如何使用按行组织的样本在 R 中执行单因素方差分析?
【发布时间】:2018-11-10 04:56:41
【问题描述】:

我有一个数据集,其中样本按行分组。这是因为我正在使用不同的复制品。这是我的数据格式的示例,其中样本 1 位于第一行,其 3 个重复值(-5.11、-6.64、-2.44)

R1       R2      R3
-5.11   -6.64   -2.44
-4.77   -6.64    2.49
-6.64   -4.01    3.07
-6.64    0.66   -3.65
-3.06    2.7    -6.64
 3.26    3.23    1.64
 2.34    3.28    3.25
 3.14    0.79    3.18
 2.98    3.12   -6.64
-6.64   -1.85   -3.86

我想做的是使用 3 个复制逐行进行 ANOVA 分析,并有一个带有 p 值的新列。 这就是它的样子:

R1       R2      R3     p-value
-5.11   -6.64   -2.44   0.91    (1º anova)
-4.77   -6.64    2.49   0.006   (2º anova)
-6.64   -4.01    3.07   0.05    (3º anova)
-6.64    0.66   -3.65   0.0001
-3.06    2.7    -6.64   0.0006
 3.26    3.23    1.64   0.60
 2.34    3.28    3.25    ... 
 3.14    0.79    3.18    ...
 2.98    3.12   -6.64    ... 
-6.64   -1.85   -3.86    ...

我尝试使用 Excel 执行此操作,但这样做的问题是 Excel 创建了一个汇总表,而不仅仅是结果。对于少数结果,这没关系,我复制 p 值并复制到第四列,但在这种情况下,我有 13000 行...

这是一个可重现的例子:

R1 = c(-5.11,-4.77,-6.64,-6.64,-3.06,3.26,2.34)
R2 = c(-6.64,-6.64,-4.01,0.66,2.7,3.23,3.28)
R3 = c(-2.44,2.49,3.07,-3.65,-6.64,1.64,3.25)

mydata = data.frame(cbind(R1,R2,R3))

我尝试使用 R 来进行此分析,但我没有找到逐行进行分析的方法。我发现的唯一选择是按列。

提前谢谢你。

【问题讨论】:

  • 如果我理解正确,您想对三点进行方差分析吗?如果这是真的,这可能是非常少的信息可以放入模型中。因变量是什么?
  • 正是罗马 Luštrik 。例如,第一个数据方差分析(-5.11,-6.64 和 -2.44),第二个方差分析(-4.77,-6.64,2.49)等。我知道这可能是非常少的信息,但有时我们有超过 3 个重复和在这种情况下,我的老板想用那个 p 值做点什么。

标签: r anova


【解决方案1】:

根据here 找到的建议,我们使用stack 生成包含一个value 和一个指示变量(ind)的数据帧,然后执行aov

R1 = c(-5.11,-4.77,-6.64,-6.64,-3.06,3.26,2.34)
R2 = c(-6.64,-6.64,-4.01,0.66,2.7,3.23,3.28)
R3 = c(-2.44,2.49,3.07,-3.65,-6.64,1.64,3.25)

mydata = data.frame(cbind(R1,R2,R3))

mat <- t(mydata)
rownames(mat) <- NULL
colnames(mat) <- letters[seq_len(ncol(mat))]
df <- stack(as.data.frame(mat))

> head(df)
  values ind
1  -5.11   a
2  -6.64   a
3  -2.44   a
4  -4.77   b
5  -6.64   b
6   2.49   b

aov(values ~ ind, data = df)

Call:
   aov(formula = values ~ ind, data = df)

Terms:
                     ind Residuals
Sum of Squares  164.5202  179.6335
Deg. of Freedom        6        14

Residual standard error: 3.582033
Estimated effects may be unbalanced

如果我们需要更多信息,我们也可以使用anova(lm(...))

test <- anova(lm(values ~ ind, data = df))
summary(test)

       Df         Sum Sq         Mean Sq         F value          Pr(>F)      
 Min.   : 6   Min.   :164.5   Min.   :12.83   Min.   :2.137   Min.   :0.1134  
 1st Qu.: 8   1st Qu.:168.3   1st Qu.:16.48   1st Qu.:2.137   1st Qu.:0.1134  
 Median :10   Median :172.1   Median :20.13   Median :2.137   Median :0.1134  
 Mean   :10   Mean   :172.1   Mean   :20.13   Mean   :2.137   Mean   :0.1134  
 3rd Qu.:12   3rd Qu.:175.9   3rd Qu.:23.77   3rd Qu.:2.137   3rd Qu.:0.1134  
 Max.   :14   Max.   :179.6   Max.   :27.42   Max.   :2.137   Max.   :0.1134  
                                              NA's   :1       NA's   :1  

编辑:ANOVA 不会给你单个 p 值,但 lm 会:

总结(lm(values ~ ind, data = df))

Call:
lm(formula = values ~ ind, data = df)

Residuals:
   Min     1Q Median     3Q    Max 
-4.307 -1.797 -0.440  0.550  5.597 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)  
(Intercept)   -4.730      2.068  -2.287   0.0383 *
indb           1.757      2.925   0.601   0.5577  
indc           2.203      2.925   0.753   0.4637  
indd           1.520      2.925   0.520   0.6114  
inde           2.397      2.925   0.819   0.4263  
indf           7.440      2.925   2.544   0.0234 *
indg           7.687      2.925   2.628   0.0199 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.582 on 14 degrees of freedom
Multiple R-squared:  0.478, Adjusted R-squared:  0.2543 
F-statistic: 2.137 on 6 and 14 DF,  p-value: 0.1134

【讨论】:

  • 这是一大步。但是我怎样才能获取“A ind”值的 p 值?
  • 是的!这就是我想要的。谢谢兄弟
  • @Enrique 确保您报告样本量。报告置信区间可能会更好(与样本量一致)。例如。参见 Wasserstein, R. L. 和 Lazar, N. A. (2016)。 ASA 关于 p 值的声明:背景、过程和目的。美国统计学家,70(2),129–133。 doi.org/10.1080/00031305.2016.1154108
猜你喜欢
  • 2012-12-21
  • 2022-01-19
  • 1970-01-01
  • 2012-01-09
  • 2019-09-08
  • 1970-01-01
  • 1970-01-01
  • 2019-06-12
  • 2018-05-16
相关资源
最近更新 更多