У меня есть следующий список pvalues Добавить na.omit в качестве аргумента в функции
pval.list <- list(list(a=c(0.05, 0.0001, 0.32, 0.45), b=c(0.1,0.12,0.01,0.06), c=c(0.1,0.12,0.01,0.06), d=c(0.01,0.02,0.03,0.04)),
list(e=c(0.04, NA, 0.232, 0.245), f=c(0.05, 0.01, 0.22, 0.54), g=c(0.005, 0.1, 0.032, 0.045)),
list(h=c(0.03, 0.01, NA, 0.4), i=c(0.5, 0.0001, 0.132, 0.045), j=c(0.005, 0.0001, 0.0032, 0.045), k=c(0.5, 0.1, 0.932, 0.545)),
list(l=c(0.022, NA, 0.32, 0.45), m=c(0.0589, 0.0001, NA, 0.0045)),
list(n=c(0.051, 0.01, 0.32, 0.45), o=c(0.05, 0.0001, 0.32, 0.45), p=c(0.05, 0.0001, 0.32, 0.45), q=c(0.05, 0.0001, NA, 0.45)),
list(r=c(NA, 0.001, 0.32, 0.45), s=c(0.05, 0.0001, NA, 0.45), t=c(0.05, 0.0001, 0.32, 0.45)))
Я пытаюсь применить функцию (смотри ниже) к этому списку:
Fisher.test <- function(p) {
Xsq <- -2*sum(log(p))
p.val <- 1-pchisq(Xsq, df = 2*length(p))
return(p.val)
}
После показания @ G.Grothendieck Я использовал эту команду: lapply(lapply(pval.list, Reduce, f = cbind), apply, 1, Fisher.test)
однако, когда в списке отсутствуют значения, подход не работает. Я попытался включить na.omit
в качестве аргумента в lapply
, но это не устраняет проблему.
Должен ли я добавить na.omit
в качестве аргумента в Fisher.test
функции?
Благодаря
Что вы хотите, чтобы выход был, когда входным значением является 'NA'? – Thomas
Мой желаемый результат должен быть указан в ответе от пользователя @ user1981275 – user2380782