2020.12.10丨cufflinks 简介及使用说明
一. 簡介
Cufflinks下主要包含cufflinks,cuffmerge,cuffcompare和cuffdiff等幾支主要的程序。主要用于基因表達量的計算和差異表達基因的尋找。
Cufflinks程序主要根據Tophat的比對結果,依托或不依托于參考基因組的GTF注釋文件,計算出(各個gene的)isoform的FPKM值,并給出trascripts.gtf注釋結果(組裝出轉錄組)。
注意:
1. fragment的長度的估測,若為pair-end測序,則cufflinks自己會有一套算法,算出結果。若為single-end測序,則cufflinks默認的是高斯分布,或者你自己提供相關的參數設置。
2. cufflinks計算multi-mapped reads,一般a read map到10個位置,則每個位置記為10%
3. 一般不推薦用cufflinks拼接細菌的轉錄組,推薦?Glimmer。但是,若有注釋文件,可以用cufflinks和cuffdiff來檢測基因的表達和差異性。
4.?cufflinks/cuffdiff不能計算出exon或splicing event的FPKM
5.cuffdiff處理時間序列data:采用參數-t
6.當你使用cufflinks時,在最后出現了99%,然后一直不動。因為cuffdiff需要更多的CPU來處理一些匹配很多reads的loci。而這些位點一般要等其他位點全部解決了后,才由cuffdiff來處理??梢杂脜?M來提供相關的文件,過濾掉rRNA或者線粒體RNA。
7. 當使用cufflinks或cuffdiff出現了“crash with a ‘bad_alloc' error”,cuffdiff和cufflinks運行了很長時間才結束————這表明計算機拼接一個高表達的基因或定量分析一個高表達的基因,運行的內存使用玩盡了!解決方法:修改選項“-max-bundle-frags”,可以先嘗試500000,若錯誤依舊在,可以繼續下調!
8. cuffdiff報道的結果里面所有的基因和轉錄本的FPKM=0,這表明GTF中的染色體名字和BAM里的名字不匹配。
9.??cuffdiff和cufflinks的缺點:存在一定的假基因和轉錄本(原因:測序深度,測序質量,測序樣本的測序次數,以及注釋的錯誤)
10. large fold change表達量不代表數據的明顯性(這些基因的isform多或這些基因測序測到的少,整體較低的表達)。cuffdiff中明顯表達倍數改變的基因,存在不確定性。
11.??通過cufflinks產生的結果中transcript.gtf文件中cuff標識的轉錄本就是新的轉錄本。相應的,其他模塊輸出中CUFF標識代表著新的轉錄本。
12. 若出現了如下錯誤:
You?are?using?Cufflinks?v2.2.1,?which?is?the?most?recent?release.
open:?No?such?file?or?directory
File?30?doesn't?appear?to?be?a?valid?BAM?file,?trying?SAM...
Error:?cannot?open?alignment?file?30?for?reading
這表明,你的參數有問題。例如“--min-intron-length”,你設置為了:“-min-intron-length”
二. 參數;
1.? 普通參數
? -h | --help? ? ?-o | --output-dir default: ./設置輸出的文件夾名稱? ?-p | --num-threads default: 1用于比對reads的CPU線程數? ?-G | --GTF 提供一個GFF文件,以此來計算isoform的表達。此時,將不會組裝新的transcripts, 程序會忽略和reference transcript不兼容的比對結果? ?-g | --GTF-guide 提供GFF文件,以此來指導轉錄子組裝(RABT assembly)。此時,輸出結果會包含reference transcripts和novel genes and isforms。? ?-M | --mask-file 提供GFF文件。Cufflinks將忽略比對到該GTF文件的transcripts中的reads。該 文件中常常是rRNA的注釋,也可以包含線立體和其它希望忽略的transcripts的注釋。將這些不需要的RNA去除后,對計算mRNA的表達量是有利的。? ?-b | --frag-bias-correct 提供一個fasta文件來指導Cufflinks運行新的bias detection and correction algorithm。這樣能明顯提高轉錄子豐度計算的精確性。? ?-u | --multi-read-correct讓Cufflinks來做initial estimation步驟,從而更精確衡量比對到genome多個位點的reads。? ?--library-type default:fr-unstranded處理的reads具有鏈特異性。比對結果中將會有個XS標簽。一般Illumina數據的lib rary-type為 fr-unstranded。--library-norm-method??? 具體參考官網,三種方式:classic-fpkm? 默認的方式。geometric? 針對DESeq。quartile? 計算時,fragments和總的map的count取75%2.?豐度評估參數
-m | --frag-len-mean default: 200 插入片段的平均長度。不過現在Cufflinks能learns插入片段的平均長度,因此不推薦自主 設置此值。? ?-s | --frag-len-std-dev default: 80 插入片段長度的標準差。不過現在Cufflinks能learns插入片段的平均長度,因此不推薦自 主設置此值。? ?-N | --upper-quartile-form 使用75%分為數的值來代替總的值(比對到單一位點的fragments的數值),作normalize。這樣有利于在低豐度基因和轉錄子中尋找差異基因。? ?--total-hits-norm default: TRUE Cufflinks在計算FPKM時,算入所有的fragments和比對上的reads。和下一個參數 對立。默認激活該參數。? ?--compatible-hits-norm Cufflinks在計算FPKM時,只針對和reference transcripts兼容的fragments以及比對上的reads。該參數默認不激活,只能在有 --GTF 參數下有效,并且作 RABT 或 ab initio 的時候無效。 --max-mle-iterations ?進行極大似然法時選擇的迭代次數,默認為:5000 --max-bundle-frags ?一個skipped locus/loci在別skipped前可以擁有的最大的fragment片段。默認為1000000 --no-effective-length-correction ??Cufflinks will not employ its "effective" length normalization to transcript FPKM.Cufflinks將不會使用它的“effective” 長度標準化去計算轉錄的FPKM --no-length-correction ? Cufflinks將根本不會使用轉錄本的長度去標準化fragment的數目。當fragment的數目和the features being quantified的size是獨立的,可以使用(例如for small RNA libraries, where no fragmentation takes place, or 3 prime end sequencing, where sampled RNA fragments are all essentially the same length).小心使用3.?組裝常用參數
-L | --label default: CUFFCufflink以GTF格式來報告轉錄子片段(transfrags),該參數是GTF文件的前綴? -F/--min-isoform-fraction <0.0-1.0> ?在計算一個基因的isoform 豐度后,過濾了豐度極低的轉錄本,因為這些轉錄本不可以信任。也可以過濾一些read匹配極低的外顯子。默認為0.1或者10% of the most abundant isoform (the major isoform) of the gene.(一個基因的主要isoform的豐度的10%) -j/--pre-mrna-fraction <0.0-1.0> ? 內含子被aligment覆蓋的最低深度。若小于這個值則那些內含子的alignments被忽略掉。默認為15%。 The minimum depth of coverage in the intronic region covered by the alignment is divided by the number of spliced reads, and if the result is lower than this parameter value, the intronic alignments are ignored. The default is 15%. -I/--max-intron-length? 內含子的最大長度。若大于該值的內含子,cufflinks不會報告。默認為300000.Cufflinks will not report transcripts with introns longer than this, and will ignore SAM alignments with REF_SKIP CIGAR operations longer than this. The default is 300,000. -a/--junc-alpha <0.0-1.0> ? ?剪接比對過濾中假陽性的二項檢驗中的 alpha value。默認為 0.001 -A/--small-anchor-fraction <0.0-1.0> ?在junction中一個reads小于自身長度的這個百分比,會被懷疑,可能會在拼接前被過濾掉。默認為0.09 --min-frags-per-transfrag default: 10組裝出的transfrags被支持的RNA-seq的fragments數少于該值則不被報道。? --overhang-tolerance ?當決定一個reads或轉錄本與某個轉錄本兼容或匹配的時候,允許的能加入該轉錄本的外顯子的延伸長度。默認是8bp和bowtie/tophat默認的一致。 --max-bundle-length ?Maximum genomic length allowed for a given bundle. The default is 3,500,000bp. --min-intron-length default: 50最小的intron大小。? --trim-3-avgcov-thresh ?最小的3‘端的平均覆蓋程度。小于該值,則刪除其3’端序列。默認10 ?Minimum average coverage required to attempt 3' trimming. The default is 10. --trim-3-dropoff-frac ? 最低百分比的拼接的轉錄本的3‘端的平均覆蓋程度。默認0.1 ?The fraction of average coverage below which to trim the 3' end of an assembled transcript. The default is 0.1. --max-multiread-fraction <0.0-1.0> ? 若一個轉錄本Transfrags的reads能匹配到基因組的多個位置,其中該轉錄本的reads有超過該百分比是multireads,則不會報告這個轉錄本。默認為75% ??The fraction a transfrag's supporting reads that may be multiply mapped to the genome. A transcript composed of more than this fraction will not be reported by the assembler. Default: 0.75 (75% multireads or more is suppressed). --overlap-radius default: 50Transfrags之間的距離少于該值,則將其連到一起。 Advanced Reference Annotation Based Transcript (RABT) Assembly Options:當你使用-g/--GTF-guide這個參數時,需要考慮的選項。 --3-overhang-tolerance ? ?當決定一個拼接的轉錄本(這個轉錄本可能不是新的轉錄本)和一個參考轉錄本是否合并時,參考轉錄本的3‘端允許延伸的長度。默認600bp ? The number of bp allowed to overhang the 3' end of a reference transcript when determining if an assembled transcript should be merged with it (ie, the assembled transcript is not novel). The default is 600 bp. ?? --intron-overhang-tolerance ??當決定一個拼接的轉錄本(這個轉錄本可能不是新的轉錄本)和一個參考轉錄本是否合并時,參考轉錄本的外顯子允許延伸的長度。默認50bp ? The number of bp allowed to enter the intron of a reference transcript when determining if an assembled transcript should be merged with it (ie, the assembled transcript is not novel). The default is 50 bp. --no-faux-reads ??This option disables tiling of the reference transcripts with faux reads. Use this if you only want to use sequencing reads in assembly but do not want to output assembled transcripts that lay within reference transcripts. All reference transcripts in the input annotation will also be included in the output.這一項將不能掩蓋參考轉錄組中的假reads。當你只想在拼接中使用測序的reads而不想輸出lay within reference transcripts的拼接的轉錄組。輸入時注釋的所有的參考轉錄組也將會輸入到輸出中。 其他參數(無關緊要) -v/--verbose ? 顯示版本信息等等 -q/--quiet ? ? 除了警告和錯誤外,其他信息將不會print --no-update-check ? 關系cufflinks自動更新的能力4.?Cufflinks輸出結果
cufflinks的輸入文件是sam或bam格式。并且sam或bam格式的文件必須排好序。(The SAM file supplied to Cufflinks must be sorted by reference position.)Tophat的輸出結果sam或bam已經排好了序。針對其他的未排序的sam或bam文件采用如下排序方式:sort -k 3,3 -k 4,4n hits.sam > hits.sam.sorted1. transcripts.gtf該文件包含Cufflinks的組裝結果isoforms。前7列為標準的GTF格式,最后一列為attributes。其每一列的意義: 列數 列的名稱 例子 描述1 序列名 chrX 染色體或contig名; 2 來源 Cufflinks 產生該文件的程序名; 3 類型 exon 記錄的類型,一般是transcript或exon; 4 起始 1 1-base的值; 5 結束 1000 結束位置; 6 得分 1000 ; 7 鏈 + Cufflinks猜測isoform來自參考序列的那一條鏈,一般是'+','-'或'.'; ? 8 frame . Cufflinks不去預測起始或終止密碼子框的位置; 9 attributes ... 詳見下 每一個GTF記錄包含如下attributes:gene_id?? CUFF.1 ?? Cufflinks的gene id ;? transcript_id?? CUFF.1.1 Cufflinks的轉錄子 id?? ; FPKM 101.267 isoform水平上的豐度, Fragments Per Kilobaseof exon model per Million mapped fragments ; frac 0.7647 保留著的一項,忽略即可,以后可能會取消這個;? conf_lo 0.07 isoform豐度的95%置信區間的下邊界,即 下邊界值 =FPKM * ( 1.0 - conf_lo ) ;? conf_hi 0.1102 isoform豐度的95%置信區間的上邊界,即 上邊界值 =FPKM * ( 1.0 + conf_hi ) ; cov 100.765 計算整個transcript上read的覆蓋度;? full_read_support yes 當使用 RABT assembly 時,該選項報告所有的intr ons和exons是否完全被reads所覆蓋 2. ispforms.fpkm_trackingisoforms(可以理解為gene的各個外顯子)的fpkm計算結果3. genes.fpkm_trackinggene的fpkm計算結果總結
以上是生活随笔為你收集整理的2020.12.10丨cufflinks 简介及使用说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 减少USB 1.1 2.0 端口驱动程
- 下一篇: 《google软件测试之道》精彩语句摘抄