1
我有一些基因組位置,我想用biomaRt R軟件包根據Ensembl註釋這些位置(找到Ensembl基因ID,外顯子,內含子等特徵)。我的數據使用biomaRt註釋位置
chr start stop strand
chr10 100572320 100572373 -
chr10 100572649 100572658 +
我有一些基因組位置,我想用biomaRt R軟件包根據Ensembl註釋這些位置(找到Ensembl基因ID,外顯子,內含子等特徵)。我的數據使用biomaRt註釋位置
chr start stop strand
chr10 100572320 100572373 -
chr10 100572649 100572658 +
的
部分準備你的數據查詢biomaRt
樣本數據
data = data.frame(chr = "chr17", start = 63973115, end = 64437414)
data$query = paste(gsub("chr",'',data$chr),data$start,data$end, sep = ":")
#> data
# chr start end query
#1 chr17 63973115 64437414 17:63973115:64437414
然後使用biomaRt
library(biomaRt)
# select your dataset of interest accordingly.
# I have used human specific dataset identifier
# you can see all available datasets using listDatasets(mart),
# after setting your mart of interest
mart = useMart(
'ENSEMBL_MART_ENSEMBL',
host = 'ensembl.org',
dataset = 'hsapiens_gene_ensembl')
# do listAttributes(mart) to list all information you can extract using biomaRt
out = getBM(
attributes = c('ensembl_gene_id', 'external_gene_name', 'gene_biotype',
'ensembl_transcript_id', 'ensembl_exon_id'),
filters = 'chromosomal_region',
values = data$query,
mart = mart)
這會給你的ensembl用於指定基因組位置中的基因,轉錄本和外顯子。 biomaRt提供更多信息,所以不要忘記使用listAttributes()
找出所有。
感謝Veerendra的幫助。但我也想知道這些位置位於哪個區域(Intronic,exonic或Introgenic)。我找不到適當的屬性。在這方面你能幫助我嗎? – star
正如我所提到的,使用'listAttributes()'來查找所有可用的信息來提取。我認爲你可以得到位於這些區域內的外顯子座標。如果沒有,您可以直接從ensembl ftp站點下載gtf文件並查看它。另一種選擇是使用GenomicFeatures庫。它允許你使用biomart建立自己的數據庫,希望從那裏你可以找到你需要的所有信息。 –
我認爲你不會找到所有功能位置的直接註釋,所以你將不得不解決一些問題。爲此,我發現'GenomicFeatures'庫非常有用。你可以先看看它的手冊。 –