无法使用biomaRt包从Entrez ID获取Gene Symbols

时间:2016-07-08 11:44:45

标签: r bioinformatics bioconductor biomart

我使用以下代码从Entrez ID中检索Gene符号:

library("biomaRt")
ensembl <- useMart("ENSEMBL_MART_ENSEMBL", dataset = "hsapiens_gene_ensembl", host = "www.ensembl.org")

g <- getBM(c("hgnc_symbol"), filters = "entrezgene", c(entrez), ensembl)

但是我收到以下错误:

Error in value[[3L]](cond): Request to BioMart web service failed. Verify if you are still connected to the internet.  Alternatively the BioMart web service is temporarily down.
Traceback:

1. getBM(c("hgnc_symbol"), filters = "entrezgene", c(entrez), ensembl)
2. tryCatch(postForm(paste(martHost(mart), "?", sep = ""), query = xmlQuery), 
 .     error = function(e) {
 .         stop("Request to BioMart web service failed. Verify if you are still connected to the internet.  Alternatively the BioMart web service is temporarily down.")
 .     })
3. tryCatchList(expr, classes, parentenv, handlers)
4. tryCatchOne(expr, names, parentenv, handlers[[1L]])
5. value[[3L]](cond)
6. stop("Request to BioMart web service failed. Verify if you are still connected to the internet.  Alternatively the BioMart web service is temporarily down.")

2 个答案:

答案 0 :(得分:0)

true

以下是我使用biomaRt的方法。我认为这是自我解释的。对于每个脚本,直到my_ids的行都是相同的。对于你的情况,在attributes =“entrezgene”中使用“ensembl_gene_id”代替我是有用的。合并是重要的一步。在我的例子中,合并时,by.x =“X”表示在my_ids csv中,ensemblegeneid位于名为“X”的列中。所以我基本上说的是,从my_ids中,将X列与results_end_1的“ensembl_gene_id”列匹配并合并。如果有任何不清楚的地方,请询问。 的Firat

答案 1 :(得分:0)

打开 Internet Explorer ,转到 ensembl 功能的主机参数中使用的网站。

然后转到设置标签,并将其添加到受信任的网站列表中。

这解决了我的问题。

希望它也能帮到你。