我想通过元素明智得到以下列表式数据的费舍尔得分。我向这个社区提出这个统计问题的道歉。但是,我的数据包含3个GRanges对象的重叠重要性分数列表,我希望按元素获得其全局Fisher分数。我怎样才能在R中找到它?
[[1]]
NumericList of length 7
[[1]] 1e-22
[[2]] 1e-19
[[3]] 1e-18
[[4]] 1e-16
[[5]] 1e-24
[[6]] 1e-20
[[7]] 1e-15
[[2]]
NumericList of length 7
[[1]] 1e-24
[[2]] 1e-24
[[3]] 1e-20
[[4]] 1e-25
[[5]] 0.1
[[6]] 1e-19
[[7]] 1e-18
[[3]]
NumericList of length 7
[[1]] 1e-11
[[2]] 1e-11
[[3]] 1e-10
[[4]] numeric(0)
[[5]] numeric(0)
[[6]] 1e-15
[[7]] numeric(0)
用0替换数字(0),试试这个:
v3 <- lapply(v3, function(x) {
res <- ifelse(length(x)>0, x, 0)
})
data <- DataFrame(
v1=c(1e-22,1e-19,1e-18,1e-16,1e-24,1e-20, 1e-15),
v2=c(1e-24,1e-24,1e-20,1e-25,0.1,1e-19,1e-18),
v3=c(1e-11,1e-11,1e-10,numeric(0),numeric(0),1e-15,numeric(0)))
global fisher score of `(1e-22, 1e-24, 1e-11)` = ?
global fisher score of `(1e-19, 1e-24, 1e-11)` = ?
...
global fisher score of `(1e-24, 1e-01, numeric(0))` = ?
我知道基础包中的fisher.test功能可以进行渔民精确测试。但它需要矩阵作为输入,而我不能将我的数据作为矩阵。我把我的数据作为元素操作的理想格式。
我想通过元素明智获得全球渔民分数。我怎样才能在R中得到这个?或者,如果我使用chisq.test,我怎样才能通过元素方式获得上面数据表的卡方统计量?如果有人能给我任何想法,我将不胜感激。
答案 0 :(得分:0)
这是通过使用Fisher方法获得全球渔民分数的解决方案:
library(metap)
comb.pval <- suppressWarnings(
res <- apply(data[,1:3],1, function(ro) sumlog(ro)$p)
)
欢呼声
Jurat