我有A R這樣的代碼:如何繼續將以下R代碼轉換爲Python?
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的。是否有某種腳本可用於此?小小的頭腦開始將是偉大的。由於
其中'module_genes'變量來自? – leodido 2013-03-08 21:41:24
首先編寫一些測試腳本,以便知道給定輸入的期望輸出。然後你可以檢查你的Python轉換是否與你的R版本做同樣的事情。當然,隨着一些隨機抽樣(sample()函數),你可能會有一些樂趣... – Spacedman 2013-03-09 00:25:35