Trinity 的介绍
Trinity作為一款經(jīng)典的轉(zhuǎn)錄組組裝軟件,在眾多的轉(zhuǎn)錄組組裝軟件中認可度應(yīng)該是最高的,而且版本一直在更新,現(xiàn)在已經(jīng)出到了v2.6版。此文主要用于記錄閱讀Trinity源碼過程中的一些理解,閱讀的Trinity源碼版本是v2.4。
Trinity的源碼涉及到的各種不同的編程語言,例如perl、c++、java等。同時也使用了幾款不同的生物信息分析軟件,例如jellyfish、bowtie2、samtools等。到目前為止,Trinity除了可以進行轉(zhuǎn)錄組組裝之外還打包了一些其他的軟件用于組裝之后的下游分析,如RSEM用于計算表達量、利用R包edgeR進行差異表達分析、利用transcoder進行CDS預(yù)測。
Trinity官網(wǎng)介紹是分為三個步驟:Inchworm、Chralysis、Butterfly。
拼接得到的轉(zhuǎn)錄本序列信息以FASTA格式儲存,如下所示:
>c13_g1_i1 len=263 path=[369:0-108 477:109-148 65:149-262]
TGAAGAGGGAGGAGGCGAATTGGGTTTGGCGTGGCTGCTGTTAAGGGGCTGCAAGAGGTG
GAAAGGAGGACAGAGAAGATGGAAAGATGGAGACAAGGACTGATCTGGGTGGTAGCAACA
GTACCTGGAAGTGGGTGTTTGGAGAAAGGGCGAAAGATGTGGTCTCTGGGAATGGCGATG
GAATGGGCAGCAGCAGCAGCAGGAGTCCAGGACAGGTAGTAGCAGTGGCGGAAATTATAC
CTGGGATAAGGCCCAGATCTCTG
>后面的是轉(zhuǎn)錄本的id號,len=后面為轉(zhuǎn)錄本的長度,即該轉(zhuǎn)錄本的堿基數(shù),path為從 de Bruijn Graph subComponent中經(jīng)歷的路徑。其后為該轉(zhuǎn)錄本的堿
基序列。每個轉(zhuǎn)錄本的id號構(gòu)成都為c_g_i, 其中c為拼接過程形成的de Bruijn Graph Component, g為subcomponet,可以看作為廣泛意義上的gene,i 代表轉(zhuǎn)錄本isoform。
即:c_g為基因ID,c_g_i為c_g基因不同的轉(zhuǎn)錄本
c1_g1_i1與c1_g1_i2屬于同一個基因的不同轉(zhuǎn)錄本,c1_g1_i1與c1_g2_i1屬于旁系同源基因 此結(jié)果的理解屬于分類后的reads重新運行Trinity得到的Trinity.fasta文件,而最終的Trinity結(jié)果是對每一類的Trinity.fasta文件的合并
對于Trinity得到的轉(zhuǎn)錄本序列,Trinity官網(wǎng)推薦取每條基因中最長的轉(zhuǎn)錄本作為Unigene,并用這些Unigene去進行功能注釋,但是在計算表達量的時候我們依然會用到所有的轉(zhuǎn)錄本
當使用Trinity組裝時,如果數(shù)據(jù)量過大,可以考慮使用--min_kmer_cov 2參數(shù)丟棄uniquely occurring kmer, 從而降低內(nèi)存消耗
設(shè)置--no_distributed_trinity_exec會在輸出目錄下面(trinity_out_dir)生成一個recursive_trinity.cmds文件,這里面包含了下一步運行的所有命令,這些命令是可以并行執(zhí)行的時候
然后運行Trinity會自動識別已經(jīng)完成部分,接著未完成的命令繼續(xù)運行
運行命令如下:
Trinity --seqType fq --max_memory 100G --CPU 50 --min_kmer_cov 3 --left FCHK2FVCCXY_L3_WHDAVllgEAAARAAPEI-96_1.fq.gz,FCHK2FVCCXY_L3_WHDAVllgEAABRAAPEI-97_1.fq.gz,FCHK2FVCCXY_L3_WHDAVllgEAABRAAPEI-97_1.fq.gz --right FCHK2FVCCXY_L3_WHDAVllgEAAARAAPEI-96_2.fq.gz,FCHK2FVCCXY_L3_WHDAVllgEAABRAAPEI-97_2.fq.gz,FCHK2FVCCXY_L3_WHDAVllgEAACRAAPEI-98_2.fq.gz --output gongtong_trinity_out --group_pairs_distance 230 --no_version_check --verbose --min_contig_length 250 --min_glue 3 --no_distributed_trinity_exec
~/bio/trinityrnaseq-Trinity-v2.4.0/trinity-plugins/parafly/bin/ParaFly -c recursive_trinity.cmds -CPU 50 -v
--trinity_complete 在遞歸運行Trinity時作為一個flag控制程序運行Butterfly
Butterfly 是一個通過德布魯因圖尋找正確的路徑并得到相應(yīng)的contig序列的jar包。對于一個德布魯因圖會根據(jù)reads的關(guān)系來進行拆分,同時對于多個可能的路徑都會輸出為contig
拆分得到的contig可以認為是屬于一個基因家族的轉(zhuǎn)錄本序列或者認為是旁系同源基因,而對于一條路徑延伸時有多個選擇得到的不同contig則認為是同一個基因的不同轉(zhuǎn)錄本
總結(jié)
以上是生活随笔為你收集整理的Trinity 的介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 唉,360你何苦这样呢,刷票有意思么?
- 下一篇: 什么是IT