我正在尝试在数据集的几行上执行单向anova并提取p_value以便在之后使用它。
这就是我所做的:
anova <- function(x) {summary(aov(x ~ bt.factor))[[1]]["Pr(>F)"]}
anv.pval <- apply(golubALL, 1, anova)
使用这个公式,我能够提取pvalue,但它带有其他元素:
$`1414_at`
Pr(>F)
bt.factor 0.7871
Residuals
我希望得到的结果只是在列表中。我怎么能提取它?
答案 0 :(得分:2)
考虑使用broom
。使用tidy()
,您只能提取p.value
字段:
require(broom)
a <- aov(mpg ~ wt, mtcars)
tidy(a)
# term df sumsq meansq statistic p.value
# 1 wt 1 847.7252 847.725250 91.37533 1.293959e-10
# 2 Residuals 30 278.3219 9.277398 NA NA
tidy(a)$p.value
# [1] 1.293959e-10 NA