如果给出了基因组间隔的分值,我如何获得 p 值?

how can I get p-value if there is score value of genomic interval given?

我在想这个。如果基因组区间分值的表达式为:gr$score = log10(gr$p-value);那么 p 值将是:gr$p-value = 10^ -10/ gr$score。对我来说,以这种方式获得 p 值的表达并不优雅。在 R 中转换 p 值的正确和正式表达式吗?

expression 1: gr$score = -10*log10(gr$pvalue)
             OR
             gr$score = -1* log10(gr$pvalue)

expression 2: gr$pvalue = 10^ -10/ gr$score

如何归一化给定表达式 1 的 pvalue?谢谢大家

让我们先生成这个可重现的数据:

gr <- GRanges(
  seqnames=Rle(c("chr1", "chr2", "chr3", "chr4"), c(5, 6, 4, 3)),
  ranges=IRanges(seq(1, by=9, len=18), seq(6, by=9, len=18)),
  rangeName=letters[seq(1:18)], score=sample(1:25, 18, replace = FALSE))

然后 pvalue:

pvalueBase <- c(1,10,100)
p.value <- 10^(score(gr)/(- pvalueBase))