我正在使用R中的biomaRt查询ensembl的人类基因hsapiens数据库。我正在使用函数getBM获取所有基因的名称、起始位置和停止位置,但我找不到正确的属性来检索转录起始点( TSS )。这可能是因为它被认为与seqType= c("3utr", "5utr")相同
发布于 2012-10-22 23:51:37
可以使用listAttributes在数据框中检索可查询属性的完整列表。然后,只需在其中搜索所需的属性即可。
mart <- useDataset("hsapiens_gene_ensembl", useMart("ensembl"))
att <- listAttributes(mart)
grep("transcript", att$name, value=TRUE)将会得到一个相当长的列表,就像这样开始
[1] "ensembl_transcript_id"
[2] "transcript_start"
[3] "transcript_end"
[4] "external_transcript_id"
[5] "transcript_db_name"
[6] "transcript_count"
[7] "transcript_biotype"
[8] "transcript_status"
[9] "clone_based_ensembl_transcript_name"
[10] "clone_based_vega_transcript_name" 然后,您可以继续使用这些名称进行查询
getBM(attributes=c("transcript_start", "transcript_end"),
filters="hgnc_symbol", values="foxp2", mart=mart)然后你就会得到
transcript_start transcript_end
1 113726382 114330960
2 113726494 114271639
3 113726615 114330155
4 113728221 114066565
5 113728221 114271650
6 114054329 114330218
7 114055052 114139783
8 114055052 114333827
9 114055110 114330155
10 114055113 114330200
11 114055275 114269037
12 114055374 114285885
13 114055378 114330012
14 114066555 114294198
15 114066557 114271754
16 114066557 114282629
17 114066570 114294198
18 114055052 114333823
19 114268613 114329981
20 113726615 114310038如果您想要所有基因的所有转录本,请删除filter和values参数,但请注意,您将获得大量数据。
发布于 2016-02-22 10:00:34
现在,可以下载转录起始站点的特定属性:transcription_start_site。
library("biomaRt")
ensembl = useMart("ensembl", dataset = "hsapiens_gene_ensembl")
attributes = listAttributes(ensembl, page = "structure")
attributes[grep("transcript", attributes$description, ignore.case = TRUE), ]
# name description
# 178 ensembl_transcript_id Ensembl Transcript ID
# 183 transcript_start Transcript Start (bp)
# 184 transcript_end Transcript End (bp)
# 185 transcription_start_site Transcription Start Site (TSS)
# 186 transcript_length Transcript length (including UTRs and CDS)
# 195 transcript_count Transcript count
# 201 rank Exon Rank in Transcript举个例子,这是BTC基因的结果。请注意,因为它位于反向链(strand == -1)上,所以transcription_start_site的值与transcript_end的值相同。基本上,下载transcription_start_site是一条捷径,这样你就不必根据基因在哪条链上来确定转录本的哪一端是TSS。
tss <- getBM(attributes = c("transcription_start_site", "chromosome_name",
"transcript_start", "transcript_end",
"strand", "ensembl_gene_id",
"ensembl_transcript_id", "external_gene_name"),
filters = "external_gene_name", values = "BTC",
mart = ensembl)
tss
# transcription_start_site chromosome_name transcript_start transcript_end strand
# 1 75635873 HG706_PATCH 75612096 75635873 -1
# 2 75660403 HG706_PATCH 75610476 75660403 -1
# 3 75719896 4 75669969 75719896 -1
# 4 75695366 4 75671589 75695366 -1
# ensembl_gene_id ensembl_transcript_id external_gene_name
# 1 ENSG00000261530 ENST00000567516 BTC
# 2 ENSG00000261530 ENST00000566356 BTC
# 3 ENSG00000174808 ENST00000395743 BTC
# 4 ENSG00000174808 ENST00000512743 BTC发布于 2014-08-22 03:25:43
我认为"transcript_start“和"transcript_end”是翻译的开始和停止站点,但不一定是转录开始站点。
查看"start_position“和" end_position”属性,这些似乎是to (+链的start_position和-链的end_position),因为它们总是+链的不同转录本的最小数量的transcript_start选项和-链的最大数量的transcript_end选项。
https://stackoverflow.com/questions/13012210
复制相似问题