【发布时间】:2013-05-04 10:31:08
【问题描述】:
我刚刚进行了阶乘方差分析,然后进行了TukeyHSD 后测。我在TukeyHSD 输出中调整的一些 P 值是0.0000000。这些P值真的可以为零吗?或者这是一个四舍五入的情况,我的真实 P 值可能是 1e-17 之类的东西,四舍五入到 0.0000000。
R 中的TukeyHSD() 函数是否有任何选项可以提供包含指数的输出 P 值?
这是我的输出的 sn-p:
TukeyHSD(fit)
Tukey multiple comparisons of means
95% family-wise confidence level
Fit: aov(formula = lum ~ cells * treatment)
$`cells:treatment`
diff lwr upr p adj
NULL:a-KR:a -266.5833333 -337.887800 -195.2788663 0.0000000
WT:a-KR:a -196.3333333 -267.637800 -125.0288663 0.0000000
KR:ar-KR:a 83.4166667 12.112200 154.7211337 0.0053485
NULL:ar-KR:a -283.5000000 -354.804467 -212.1955330 0.0000000
WT:ar-KR:a -196.7500000 -268.054467 -125.4455330 0.0000000
KR:e-KR:a -219.0833333 -290.387800 -147.7788663 0.0000000
NULL:e-KR:a -185.0833333 -256.387800 -113.7788663 0.0000000
WT:e-KR:a -96.1666667 -167.471134 -24.8621996 0.0003216
【问题讨论】:
-
在您的特定情况下,p 值不可能为 0。但是 p 值可能非常小,以至于计算机无法将其与 0 区分开来。或者可能是print 方法选择将微小的 p 值报告为 0,而不是执行类似“<.000001 p>
-
使用
options(digits=22)显示所有小数位。但请注意,小于 2e-16 的数字无法可靠地区分彼此或 0。 -
一个可重现的例子(tinyurl.com/reproducible-000),或者
dput(fit)的结果,肯定会有所帮助...... -
感谢大家的帮助!! @BenBolker 在下面的回答中提供了一个很好的可重现示例,清楚地显示了正在发生的事情(因此我不会提供)。