3

biomaRt在 R 中使用来查询 ensembl 的hsapiens人类基因数据库。我正在使用该函数getBM来获取所有基因的名称、起始位置和终止位置,但我找不到用于检索 TSS(转录起始位点)的正确属性。可能是因为它被认为与 相同seqType= c("3utr", "5utr")

4

3 回答 3

7

可以使用在数据框中检索可查询属性的完整列表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

如果您希望所有基因的所有转录本都删除filtervalues参数,但请注意您将获得大量数据。

于 2012-10-22T15:51:36.860 回答
4

现在有一个可以下载的转录起始站点的特定属性: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
于 2016-02-22T02:00:33.970 回答
0

我相信“transcript_start”和“transcript_end”是翻译开始和停止站点,但不一定是TSS(转录起始站点)。

查看“start_position”和“end_position”属性,这些似乎是 TSS(+ 链的 start_position 和 - 链的 end_position),因为它们始终是 + 链的不同转录本和- 链的最大数量的 transcript_end 选项。

于 2014-08-21T19:25:42.670 回答