对于R中的小p值,Z分数四舍五入到无穷大
我正在使用一个全基因组关联研究数据集,其p值范围为1E-30到1。我有一个R数据帧数据,其中包括一个变量p,用于p值 我需要对p值进行基因组校正,我正在使用以下代码:对于R中的小p值,Z分数四舍五入到无穷大,r,precision,p-value,genetics,R,Precision,P Value,Genetics,我正在使用一个全基因组关联研究数据集,其p值范围为1E-30到1。我有一个R数据帧数据,其中包括一个变量p,用于p值 我需要对p值进行基因组校正,我正在使用以下代码: p=data$p Zsq = qchisq(1-p, 1) lambda = median(Zsq)/0.456 newZsq = Zsq/lambda Newp = 1-pchisq(newZsq, 1) 在第二行的命令中,我使用qchisq函数将p值转换为z值,p值
p=data$p
Zsq = qchisq(1-p, 1)
lambda = median(Zsq)/0.456
newZsq = Zsq/lambda
Newp = 1-pchisq(newZsq, 1)
在第二行的命令中,我使用qchisq函数将p值转换为z值,p值<1E-16的z值被四舍五入到无穷大。这意味着我最重要数据点的p值在基因组校正后四舍五入为0,我失去了它们的排名
有什么办法解决这个问题吗?请阅读help.Machine。然后设置lower.tail=FALSE,并避免与1产生差异:
p <- 1e-17
Zsq = qchisq(p, 1, lower.tail=FALSE)
lambda = median(Zsq)/0.456
newZsq = Zsq/lambda
Newp = pchisq(newZsq, 1, lower.tail=FALSE)
#[1] 0.4994993
四舍五入到无穷大。。莱尔。只需使用lower tail=FALSE。比较:1-pchisq100,1和pchisq100,1,下。尾=假