【发布时间】:2018-03-07 01:29:06
【问题描述】:
在遗传学中,非常小的 p 值很常见(例如 10^-400),我正在寻找一种方法来在 R 中的 z 值很大时获得非常小的 p 值(双尾),例如:
z=40
pvalue = 2*pnorm(abs(z), lower.tail = F)
这给了我一个零而不是一个非常重要的非常小的值。
【问题讨论】:
-
可能是个骗子:您需要在对数尺度上计算 p 值 (
log(2) + pnorm(abs(z), lower.tail=FALSE, log.p=TRUE))) -
啊!这很聪明。那将是 p 值的指数对吗?
-
@user20650:是的,但在这种情况下,p 值不仅小于 R 的默认报告限制 (2e-16),而且实际上小于可以用 64 位浮点值表示的值。 ..
标签: r statistics normal-distribution genetics