提取 genecode的gtf注釋信息

讀入數(shù)據(jù)

gtf <- rtracklayer::import('gencode.v22.annotation.gtf')#自行下載gtf注釋文件
gtf_df=as.data.frame(gtf) #轉化為矩陣 這一步就可以隨意操作了
head(gtf_df)
  seqnames start   end width strand source       type score phase           gene_id
1     chr1 11869 14409  2541      + HAVANA       gene    NA    NA ENSG00000223972.5
2     chr1 11869 14409  2541      + HAVANA transcript    NA    NA ENSG00000223972.5
3     chr1 11869 12227   359      + HAVANA       exon    NA    NA ENSG00000223972.5
4     chr1 12613 12721   109      + HAVANA       exon    NA    NA ENSG00000223972.5
5     chr1 13221 14409  1189      + HAVANA       exon    NA    NA ENSG00000223972.5
6     chr1 12010 13670  1661      + HAVANA transcript    NA    NA ENSG00000223972.5
                           gene_type gene_status gene_name level          havana_gene     transcript_id
1 transcribed_unprocessed_pseudogene       KNOWN   DDX11L1     2 OTTHUMG00000000961.2              <NA>
2 transcribed_unprocessed_pseudogene       KNOWN   DDX11L1     2 OTTHUMG00000000961.2 ENST00000456328.2
3 transcribed_unprocessed_pseudogene       KNOWN   DDX11L1     2 OTTHUMG00000000961.2 ENST00000456328.2
4 transcribed_unprocessed_pseudogene       KNOWN   DDX11L1     2 OTTHUMG00000000961.2 ENST00000456328.2
5 transcribed_unprocessed_pseudogene       KNOWN   DDX11L1     2 OTTHUMG00000000961.2 ENST00000456328.2
6 transcribed_unprocessed_pseudogene       KNOWN   DDX11L1     2 OTTHUMG00000000961.2 ENST00000450305.2
                     transcript_type transcript_status transcript_name   tag transcript_support_level
1                               <NA>              <NA>            <NA>  <NA>                     <NA>
2               processed_transcript             KNOWN     DDX11L1-002 basic                        1
3               processed_transcript             KNOWN     DDX11L1-002 basic                        1
4               processed_transcript             KNOWN     DDX11L1-002 basic                        1
5               processed_transcript             KNOWN     DDX11L1-002 basic                        1
6 transcribed_unprocessed_pseudogene             KNOWN     DDX11L1-001 basic                       NA
     havana_transcript exon_number           exon_id         ont protein_id ccdsid
1                 <NA>        <NA>              <NA>        <NA>       <NA>   <NA>
2 OTTHUMT00000362751.1        <NA>              <NA>        <NA>       <NA>   <NA>
3 OTTHUMT00000362751.1           1 ENSE00002234944.1        <NA>       <NA>   <NA>
4 OTTHUMT00000362751.1           2 ENSE00003582793.1        <NA>       <NA>   <NA>
5 OTTHUMT00000362751.1           3 ENSE00002312635.1        <NA>       <NA>   <NA>
6 OTTHUMT00000002844.2        <NA>              <NA> PGO:0000019       <NA>   <NA>

提取gene信息

gene<-gtf_df[gtf_df$type=="gene",]
head(gene)
   seqnames start   end width strand  source type score phase           gene_id
1      chr1 11869 14409  2541      +  HAVANA gene    NA    NA ENSG00000223972.5
13     chr1 14404 29570 15167      -  HAVANA gene    NA    NA ENSG00000227232.5
26     chr1 17369 17436    68      - ENSEMBL gene    NA    NA ENSG00000278267.1
29     chr1 29554 31109  1556      +  HAVANA gene    NA    NA ENSG00000243485.3
37     chr1 30366 30503   138      + ENSEMBL gene    NA    NA ENSG00000274890.1
40     chr1 34554 36081  1528      -  HAVANA gene    NA    NA ENSG00000237613.2
                            gene_type gene_status    gene_name level          havana_gene transcript_id
1  transcribed_unprocessed_pseudogene       KNOWN      DDX11L1     2 OTTHUMG00000000961.2          <NA>
13             unprocessed_pseudogene       KNOWN       WASH7P     2 OTTHUMG00000000958.1          <NA>
26                              miRNA       KNOWN    MIR6859-3     3                 <NA>          <NA>
29                            lincRNA       NOVEL RP11-34P13.3     2 OTTHUMG00000000959.2          <NA>
37                              miRNA       KNOWN    MIR1302-9     3                 <NA>          <NA>
40                            lincRNA       KNOWN      FAM138A     2 OTTHUMG00000000960.1          <NA>
   transcript_type transcript_status transcript_name        tag transcript_support_level havana_transcript
1             <NA>              <NA>            <NA>       <NA>                     <NA>              <NA>
13            <NA>              <NA>            <NA>       <NA>                     <NA>              <NA>
26            <NA>              <NA>            <NA>       <NA>                     <NA>              <NA>
29            <NA>              <NA>            <NA> ncRNA_host                     <NA>              <NA>
37            <NA>              <NA>            <NA>       <NA>                     <NA>              <NA>
40            <NA>              <NA>            <NA>       <NA>                     <NA>              <NA>
   exon_number exon_id  ont protein_id ccdsid
1         <NA>    <NA> <NA>       <NA>   <NA>
13        <NA>    <NA> <NA>       <NA>   <NA>
26        <NA>    <NA> <NA>       <NA>   <NA>
29        <NA>    <NA> <NA>       <NA>   <NA>
37        <NA>    <NA> <NA>       <NA>   <NA>
40        <NA>    <NA> <NA>       <NA>   <NA>

獲取想要的信息

colnames(gene)
 [1] "seqnames"                 "start"                    "end"                     
 [4] "width"                    "strand"                   "source"                  
 [7] "type"                     "score"                    "phase"                   
[10] "gene_id"                  "gene_type"                "gene_status"             
[13] "gene_name"                "level"                    "havana_gene"             
[16] "transcript_id"            "transcript_type"          "transcript_status"       
[19] "transcript_name"          "tag"                      "transcript_support_level"
[22] "havana_transcript"        "exon_number"              "exon_id"                 
[25] "ont"                      "protein_id"               "ccdsid"   
pick_info<-c("seqnames","start","end","width","strand","gene_id","gene_name")#提取自己想要的列
ann<-gene[,pick_info]
row.names(ann)<-as.character(ann$gene_id)
head(ann)
                  seqnames start   end width strand           gene_id    gene_name
ENSG00000223972.5     chr1 11869 14409  2541      + ENSG00000223972.5      DDX11L1
ENSG00000227232.5     chr1 14404 29570 15167      - ENSG00000227232.5       WASH7P
ENSG00000278267.1     chr1 17369 17436    68      - ENSG00000278267.1    MIR6859-3
ENSG00000243485.3     chr1 29554 31109  1556      + ENSG00000243485.3 RP11-34P13.3
ENSG00000274890.1     chr1 30366 30503   138      + ENSG00000274890.1    MIR1302-9
ENSG00000237613.2     chr1 34554 36081  1528      - ENSG00000237613.2      FAM138A
write.csv(ann,"gencode_v22_annotation_gene.csv") #輸出結果
gtf <- rtracklayer::import('gencode.vM24.annotation.gtf')
gtf_df=as.data.frame(gtf)
gene<-gtf_df[gtf_df$type=="transcript",]
pick_info<-c("seqnames","start","end","width","strand","gene_id","gene_name","gene_type","transcript_id")
gtf_df_pick<-gene[,pick_info]
write.csv(gtf_df_pick,"~/Desktop/GoogleDrive/Annotation/gencode.vM24.annotation.csv")

寫在最后的話

很多大神用perl和python來提取,對于文本提取這兩個語言有很大的優(yōu)勢夜赵,不過需要花時間取理解。平時常用R,同時實驗也比較多挤悉,所以就用R來做,還沒入坑的小朋友可以學python巫湘,會比較好很多装悲。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市尚氛,隨后出現(xiàn)的幾起案子诀诊,更是在濱河造成了極大的恐慌,老刑警劉巖阅嘶,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件属瓣,死亡現(xiàn)場離奇詭異,居然都是意外死亡讯柔,警方通過查閱死者的電腦和手機抡蛙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來魂迄,“玉大人粗截,你說我怎么就攤上這事〉肪妫” “怎么了熊昌?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵怠晴,是天一觀的道長。 經(jīng)常有香客問我浴捆,道長蒜田,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任选泻,我火速辦了婚禮冲粤,結果婚禮上,老公的妹妹穿的比我還像新娘页眯。我一直安慰自己梯捕,他們只是感情好,可當我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布窝撵。 她就那樣靜靜地躺著傀顾,像睡著了一般。 火紅的嫁衣襯著肌膚如雪碌奉。 梳的紋絲不亂的頭發(fā)上短曾,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天,我揣著相機與錄音赐劣,去河邊找鬼嫉拐。 笑死,一個胖子當著我的面吹牛魁兼,可吹牛的內(nèi)容都是我干的婉徘。 我是一名探鬼主播,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼咐汞,長吁一口氣:“原來是場噩夢啊……” “哼盖呼!你這毒婦竟也來了?” 一聲冷哼從身側響起化撕,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤几晤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后侯谁,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體锌仅,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡章钾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年墙贱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贱傀。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡惨撇,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出府寒,到底是詐尸還是另有隱情魁衙,我是刑警寧澤报腔,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站剖淀,受9級特大地震影響纯蛾,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜纵隔,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一翻诉、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧捌刮,春花似錦碰煌、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至俄认,卻和暖如春个少,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背眯杏。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工稍算, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人役拴。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓糊探,卻偏偏與公主長得像,于是被迫代替她去往敵國和親河闰。 傳聞我的和親對象是個殘疾皇子科平,可洞房花燭夜當晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容