【发布时间】:2018-04-25 21:20:34
【问题描述】:
我在提取所有人类基因时尝试使用 lapply 更改物种名称。
我仍在学习如何使用 lapply,我无法弄清楚我做错了什么。
到目前为止我有:
library(biomaRt)
我创建集市:
ensembl_hsapiens <- useMart("ensembl",
dataset = "hsapiens_gene_ensembl")
ensembl_mmusculus <- useMart("ensembl",
dataset = "mmusculus_gene_ensembl")
ensembl_ggallus <- useMart("ensembl",
dataset = "ggallus_gene_ensembl")
设置物种:
species <- c("hsapiens", "mmusculus", "ggallus")
然后我尝试使用 lapply:
species_genes <- lapply(species, function(s) getBM(attributes = c("ensembl_gene_id",
"external_gene_name"),
filters = "biotype",
values = "protein_coding",
mart = paste0(s, "_ensembl")))))
它给了我一条错误消息:
martCheck(mart) 中的错误:您必须提供有效的 Mart 对象。到 创建一个Mart对象使用函数:useMart。检查 ?useMart for 更多信息。
【问题讨论】:
-
我使用
r已经有一段时间了,但是martarg 是否需要实际的变量名?你可以试试paste0("ensembl_", s)...
标签: r bioinformatics lapply biomart