[英]Differences between p-values in summary and from the anova in R lm()
我看到anova的p值有所不同,具体取决于我如何访问它。
有没有办法获得摘要返回的相同值?
一个易于表示的情况在摘要和anova中返回<2.2e-16但在我直接访问值时给出了8.129959e-100:
x <- lm(formula = eruptions ~ waiting, data = faithful)
summary(x)
anova(x)
anova(x)$"Pr(>F)"[1]
在另一个更难以表示的情况下(有更多的数据),我得到了p值:摘要中<2.2e-16,而anova则为0。
有没有办法获得摘要和anova中返回的实际值?
我非常感谢你的帮助 -
你必须挖掘stats:::print.summary.lm
。 该值不存储在summary.lm
对象中,它是从对象的fstatistic
组件中即时计算的。
s <- summary(x)$fstatistic
(p <- pf(s["value"], s["numdf"], s["dendf"], lower.tail = FALSE))
## value
## 8.129959e-100
......它与anova()
产生的价值相同......
...正如@Dason在下面指出的那样,你可以使用format.pval()
来回到summary()
的显示格式:
format.pval(p)
## [1] "< 2.22e-16"
我没有看到任何方法,缺少自己的黑客print.summary.lm
,覆盖其中的format.pval()
调用以打印摘要中的完整p值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.