我有这样的 R 代码:
compute_enrichment <- function(dz_vec) {
dz_vec <- dz_vec[!is.na(dz_vec)]
n_module_genes <- length(intersect(module_genes,names(dz_vec)))
module_genes_pct <- n_module_genes/length(module_genes)
result <- list(escore=NA,norm_escore=NA,pvalue=NA,pct_module_genes=module_genes_pct)
if (module_genes_pct >= MIN_PCT_MODULE_GENES) {
result$escore <- abs(sum(dz_vec[module_genes],na.rm=T))
rand_escores <- sapply(1:N_PERMUTATIONS, function(i) {
abs(sum(sample(dz_vec,n_module_genes),na.rm=T))
})
result$norm_escore <- (result$escore - mean(rand_escores))/sd(rand_escores)
result$pvalue <- length(which(rand_escores > result$escore))/length(rand_escores)
}
result
}
我想将此代码转换为 Python。是否有某种可用的脚本?小脑袋开始会很棒。谢谢