歡迎批評(píng)指正
一蘑志、上游處理流程
上游處理步驟包括質(zhì)量檢測(cè)累奈、質(zhì)量控制、比對(duì)急但、定量[2]澎媒,每一步處理數(shù)據(jù)的目的都是不同,也有相關(guān)的軟件與之對(duì)應(yīng)波桩。通過(guò)質(zhì)量檢測(cè)戒努,原始數(shù)據(jù)的各種問(wèn)題將會(huì)呈現(xiàn)出來(lái),接下來(lái)的質(zhì)量控制就是為了解決原始數(shù)據(jù)的質(zhì)量問(wèn)題镐躲。比對(duì)是將reads比對(duì)到染色體或者基因储玫,并生成sam或者bam文件記錄比對(duì)情況以及質(zhì)量。定量既是統(tǒng)計(jì)比對(duì)到同一位置的reads萤皂,當(dāng)然并不是比對(duì)上就計(jì)數(shù)缘缚,還有一些其他的篩選條件,比如比對(duì)質(zhì)量過(guò)低或者比對(duì)到多個(gè)位置的reads就不能用來(lái)計(jì)數(shù)敌蚜。而免比對(duì)的定量軟件kallisto和salmon不會(huì)生成sam或bam文件而直接進(jìn)行定量桥滨,僅輸出定量文件。以上軟件都可以使用Conda安裝[3]弛车。
二齐媒、處理工具
(一)質(zhì)量檢測(cè)軟件
用法:fastqc [-o output dir] [--(no)extract] [-f fastq|bam|sam]
例如:fastqc 01raw_data/sample1_1_R1.fastq.gz或者fastqc 01raw_data/*
[-f fastq|bam|sam ] 指需要質(zhì)量檢測(cè)的文件,可以是fastq文件纷跛,也可以是.gz喻括、bam或者sam文件。[-o output dir] 指定質(zhì)量報(bào)告生成的目錄贫奠,如果不指定唬血,將會(huì)在輸入文件所在目錄生成質(zhì)量報(bào)告html。
這份報(bào)告包括Basic Statistics唤崭、Per base sequence quality拷恨、Per tile sequence quality、Per sequence quality scores谢肾、Per base sequence content腕侄、Per sequence GC content、Per base N content、Sequence Length Distribution冕杠、Sequence Duplication Levels微姊、Overrepresented sequences、Adapter Content分预。Basic Statistics給出基本的統(tǒng)計(jì)信息兢交,如測(cè)序平臺(tái)、序列長(zhǎng)度笼痹、GC含量配喳、序列總數(shù)。根據(jù)Per base sequence quality得到序列每個(gè)堿基的測(cè)序質(zhì)量与倡,在質(zhì)量評(píng)分在28以上為良好界逛,意味著該位置的堿基錯(cuò)誤率小于1.59%。Adapter Content則給出接頭的含量纺座,如果有接頭存在息拜,則可以根據(jù)Overrepresented sequences給出的接頭信息在質(zhì)控階段選擇對(duì)應(yīng)的接頭文件[4]。
質(zhì)檢報(bào)告數(shù)量不多還好净响,我們只需一個(gè)一個(gè)查看既可少欺,但是如果有幾十份呢?此時(shí)multiqc就派上了用場(chǎng)馋贤。multiqc本身沒有質(zhì)檢的能力赞别,只是將多個(gè)fastqc生成的html文件融合為一個(gè)html文件,這樣原本要查看幾十個(gè)html文件配乓,現(xiàn)在只需查看一個(gè)既可仿滔,極大提高了效率。
(二)質(zhì)量控制軟件
質(zhì)量控制階段使用的軟件是Trimmomatic犹芹。Trimmomatic 支持多線程崎页,可以快速的去除 Reads中的接頭,并根據(jù)堿基質(zhì)量值修剪Reads腰埂。軟件有SE和PE兩種模式飒焦,分別針對(duì)單端測(cè)序和雙端測(cè)序數(shù)據(jù)[5]。
在PE模式下屿笼,輸入文件為樣本的Reads1和Reads2文件sample_R1.fastq.gz和sample_R2.fastq.gz牺荠,輸出文件一共有四個(gè)文件,分別是樣本Reads1的配對(duì)序列和未配對(duì)序列以及Reads2的配對(duì)序列和未配對(duì)序列驴一,所以對(duì)文件命名時(shí)也需要按照輸出文件的順序休雌,例如sample_paired_R1.clean.fastq.gz sample_unpaired_R1.clean.fastq.gz sample_paired_R2.clean.fastq.gz sample_unpaired_R2.clean.fastq。
Trimmomatic會(huì)按照所給參數(shù)的順序處理輸入文件蛔趴。一般以下參數(shù)順序進(jìn)行處理挑辆。
參數(shù)ILLUMINACLIP過(guò)濾 reads 中的接頭例朱,并決定是否去除反向互補(bǔ)的reads孝情;參數(shù)SLIDINGWINDOW從 reads 的 5' 端開始鱼蝉,進(jìn)行滑窗質(zhì)量過(guò)濾,切掉堿基質(zhì)量平均值低于閾值的滑窗箫荡;參數(shù)LEADING從 reads 的開頭切除質(zhì)量值低于閾值的堿基魁亦;參數(shù)TRAILING從 reads 的末尾開始切除質(zhì)量值低于閾值的堿基;參數(shù)MINLEN如果經(jīng)過(guò)剪切后 reads 的長(zhǎng)度低于閾值則丟棄這條 reads羔挡;參數(shù)AVGQUAL如果 reads 的平均堿基質(zhì)量值低于閾值則丟棄這條 reads洁奈;參數(shù)TOPHRED33 將 reads 的堿基質(zhì)量值體系轉(zhuǎn)為 phred-33;參數(shù)TOPHRED64將 reads 的堿基質(zhì)量值體系轉(zhuǎn)為 phred-64绞灼,現(xiàn)在基本上都是phred-33利术。
處理結(jié)束后,得到的就是sample_paired_R1.clean.fastq.gz sample_unpaired_R1.clean.fastq.gz低矮,sample_paired_R2.clean.fastq.gz sample_unpaired_R2.clean.fastq四個(gè)文件印叁。同時(shí)Trimmomatic也會(huì)給出一個(gè)處理報(bào)告,顯示配對(duì)reads和未配對(duì)reads所占百分比军掂。如果顯示配對(duì)reads超過(guò)90%轮蜕,那么在后續(xù)步驟中只需使用sample1_paired_R1.clean.fastq.gz和sample_paired_R1.clean.fastq.gz兩個(gè)文件。
(三)比對(duì)軟件
主要介紹HISAT2和STAR蝗锥。Tophat2團(tuán)隊(duì)不繼續(xù)更新Tophat2而開發(fā)了HISAT2跃洛,并推薦使用HISAT2,因?yàn)槠渌俣雀熘找椋瑑?nèi)存占用率更小汇竭,準(zhǔn)確率更高。而STAR更是ENCODE官方推薦的RNA-seq比對(duì)工具穴张。無(wú)論是HISAT2還是STAR细燎,對(duì)于Tophat2來(lái)說(shuō)都有很大的優(yōu)勢(shì)。而且綜合來(lái)講陆馁,STAR的綜合表現(xiàn)最好[1]找颓。
HISAT2和STAR的使用步驟都是先構(gòu)建索引,再進(jìn)行比對(duì)叮贩。用基于一定算法構(gòu)建的索引文件進(jìn)行比對(duì)击狮,可以明顯減少比對(duì)所需的內(nèi)存和計(jì)算量,同時(shí)顯著提高比對(duì)的速度以及準(zhǔn)確率益老。
1彪蓬、HISAT2使用
(1)構(gòu)建索引
用法:hisat2-build [options]* <reference_in> <ht2_index_base>
<reference_in>是參考基因組或者參考轉(zhuǎn)錄本的路徑,<ht2_index_base>是輸出的索引文件所在的目錄以及前綴捺萌。[options]*指一些其他可選參數(shù)档冬,為-p指定線程數(shù)可以加快構(gòu)建索引的速度,其他參數(shù)默認(rèn)既可。
例如:hisat2-build -p 4 00ref/TAIR10.fasta 03hisat2_index/TAIR10
(2)比對(duì)
用法:hisat2 [options]* -x <ht2-idx> {-1 <m1> -2 <m2> | -U <r>} [-S <sam>]
<ht2-idx>指索引文件所在目錄和前綴酷誓。<m1>和<m2>指雙端測(cè)序中Reads1和Reads2文件披坏。
<r>指單端測(cè)序文件。根據(jù)自己的測(cè)序模式選擇<m1>和<m2>或者 <r>盐数。hisat2的輸出文件較單一棒拂,僅有一個(gè)sam文件,<sam>指定輸出的sam文件玫氢。[options]*提供了大量可選參數(shù)帚屉,大多數(shù)選擇默認(rèn)既可。這里需要注意我們的reads是否具有鏈特異性漾峡,如果有鏈特異性需要對(duì)參數(shù) --rna-strandness 進(jìn)行修改攻旦。同樣,可以為-p指定線程數(shù)生逸,以提高比對(duì)速率牢屋。
示例:hisat2 --rna-strandness FR -p 4 -x 03hisat2_index/TAIR10 -1 ./02clean_data/sample1_R1_paired_clean.fq.gz -2 ./02clean_data/sample1_R2_paired_clean.fq.gz
-S 04hisat2_out/sample1.sam
使用示例比對(duì)后,僅僅會(huì)得到一個(gè)無(wú)序的sam文件牺陶,為了方便定量伟阔,還需要使用samtools軟件將無(wú)序的sam文件轉(zhuǎn)為有序的壓縮文件bam。
示例:samtools view -b -S 04hisat2_out/sample1.sam > 05samtools_out/sample1.bam; samtools sort 05samtools_out/sample1.bam > 05samtools_out/sample1_sorted.bam
-b和-S指輸入文件是sam格式掰伸,輸出是bam皱炉,并用 > 將輸出內(nèi)容重定向到一個(gè)bam文件。samtools sort默認(rèn)是按照position排序狮鸭,如有需要可以加-n參數(shù)合搅,既可按照Reads的名字排序。
2歧蕉、STAR使用
(1)構(gòu)建索引
示例: STAR --runThreadN 8 \
--runMode genomeGenerate \
--genomeDir 03star_index/ \
--genomeSAindexNbases 12 \
--genomeFastaFiles 00ref/TAIR10.fasta \
--sjdbGTFfile 00ref/TAIR10.gtf \
--sjdbOverhang 149
--runThreadN指定所用的線程數(shù)為8灾部;--runMode指定STAR要完成的動(dòng)作,默認(rèn)是alignReads惯退,所以這里需要指定為genomeGenerate以生成索引文件赌髓;--genomeDir指定索引文件的生成目錄;--genomeSAindexNbases指構(gòu)建的索引長(zhǎng)度催跪,默認(rèn)14锁蠕,建議取10-15。該值越大會(huì)消耗越多的內(nèi)存懊蒸,但是檢索的更快荣倾。但是對(duì)于小基因組來(lái)說(shuō),不能太大骑丸,如果索引太長(zhǎng)就會(huì)造成索引總數(shù)少的問(wèn)題舌仍,所以這里選擇12妒貌。也可以通過(guò)(log2(GenomeLength)/2 - 1)計(jì)算得到;--genomeFastaFiles指定參考基因組铸豁;--sjdbGTFfile指定參考基因組的注釋文件灌曙,用于構(gòu)建可變剪接數(shù)據(jù)庫(kù);--sjdbOverhang指定剪接點(diǎn)兩端的長(zhǎng)度推姻,默認(rèn)100平匈,建議取值 (mate_length - 1)框沟。mate_length在FASTQC給出的報(bào)告中可以查到藏古。
(2)比對(duì)
示例: STAR --runThreadN 8 \
--genomeDir 03star_index/ \
--readFilesCommand zcat \
--readFilesIn ./02clean_data/sample1_R1_paired_clean.fq.gz \
./02clean_data/sample1_R1_R2_paired_clean.fq.gz \
--outFileNamePrefix ./04star_out/sample1_R1 \
--outSAMtype BAM SortedByCoordinate \
--outBAMsortingThreadN 8 \
--quantMode TranscriptomeSAM GeneCounts
--runThreadN 指定所用線程為8;--genomeDir指索引文件所在位置忍燥;--readFilesCommand指對(duì)讀入文件進(jìn)行的處理拧晕,這里選擇zcat是指對(duì)讀入文件進(jìn)行解壓。--readFilesIn指定輸入文件梅垄,因?yàn)槲覀兊妮斎胛募?gz結(jié)尾厂捞,所以需要zcat,如果這里是沒有.gz結(jié)尾队丝,也就不需要--readFilesCommand參數(shù)了靡馁;--outFileNamePrefix指輸出文件的前綴;--outSAMtype指輸出文件的類型机久。不使用該參數(shù)則表示不輸出以染色體和位置定位Reads的sam文件臭墨,使用時(shí)可以選擇SAM或者BAM(SAM的壓縮格式),并且SortedByCoordinate告訴STAR此bam按照coordinate也就是position進(jìn)行排序膘盖。加上這個(gè)參數(shù)胧弛,輸出文件就是排過(guò)序的bam文件;--outBAMsortingThreadN 指定bam文件排序時(shí)所用的線程侠畔;--quantMode告訴STAR在定量時(shí)所采用的模式结缚,STAR會(huì)輸出所需的文件,TranscriptomeSAM 表示輸出比對(duì)到轉(zhuǎn)錄本的sam文件软棺;GeneCounts輸出一個(gè)記錄比對(duì)到各個(gè)基因上reads數(shù)的文件红竭。
使用示例命令,將會(huì)生成7個(gè)文件喘落。其中sample1_1Aligned.sortedByCoord.out.bam 是以bam格式記錄reads比對(duì)到基因組的文件茵宪。sample1_1Log.final.out 記錄了比對(duì)的統(tǒng)計(jì)結(jié)果。sample1_1ReadsPerGene.out.tab記錄了比對(duì)到每個(gè)基因上的reads數(shù)揖盘。sample1_1Aligned.toTranscriptome.out.bam是以bam格式記錄reads比對(duì)到轉(zhuǎn)錄本的文件眉厨。生成sample1_1Aligned.toTranscriptome.out.bam并不是必須的,比如RSEM定量時(shí)需要sample1_1Aligned.toTranscriptome.out.bam兽狭,但是featureCounts就不需要憾股。
3鹿蜀、STAR和HISAT2比較
STAR的參數(shù)比HISAT2多,也就意味著STAR更加靈活服球,用戶可以根據(jù)自己的需求靈活的改變參數(shù)茴恰,而且用戶不用考慮讓人頭疼的鏈特異性問(wèn)題,因?yàn)镾TAR可以自動(dòng)判斷是否為鏈特異性測(cè)序斩熊。而且STAR眾多的輸出文件可以滿足不同的需求往枣。HISAT2因?yàn)樗饕膬?yōu)勢(shì),可以相對(duì)輕松比對(duì)跨區(qū)域的reads(可變剪切)粉渠,而Tophat2耗時(shí)久分冈,STAR耗內(nèi)存,HISAT2克服了兩個(gè)的缺點(diǎn)[2]霸株。
(四)定量軟件
介紹的定量軟件有RSEM雕沉、featureCounts 和HTSeq-count。RSEM像是一個(gè)集成的軟件去件,對(duì)新手甚是友好坡椒,不僅提供了定量的命令,甚至連構(gòu)建表達(dá)矩陣都有相應(yīng)的命令尤溜。featureCounts以快和靈活著稱倔叼,半分鐘既可處理2000萬(wàn)的reads,用戶更是可以選擇feature和 meta-feature進(jìn)行定量宫莱。HTSeq-count同樣可以選擇feature和 meta-feature進(jìn)行定量丈攒。
1、RSEM使用
(1)構(gòu)建索引
用法:rsem-prepare-reference [options] reference_fasta_file(s) reference_name
--gtf指基因組的注釋文件梢睛,并且rsem將會(huì)使用該注釋文件從 reference_fasta_file(s)中提取出轉(zhuǎn)錄本肥印;reference_fasta_file(s)為基因組文件;reference_name指定索引的目錄以及前綴绝葡。
示例: rsem-prepare-reference --gtf 00ref/TAIR10.gtf \
00ref/TAIR10.fasta \
05rsem_index/TAIR10
使用示例命令將會(huì)生成7個(gè)文件深碱。
(2)定量
用法: rsem-calculate-expression [options] --alignments [--paired-end] input reference_name sample_name
Input為SAM/BAM/CRAM,也就是在比對(duì)后得到的文件藏畅;--paired-end指input是雙端測(cè)序敷硅;reference_name指索引文件所在目錄和前綴;sample_name為輸出文件的前綴愉阎;--alignments指輸入文件為SAM/BAM/CRAM绞蹦。
可選擇的[options]有很多,這里需要注意鏈特異性參數(shù)--forward-prob榜旦,如果無(wú)鏈特異性幽七,不加該參數(shù)既可,如果reads1是正義鏈則參數(shù)為1溅呢,反之為0澡屡;--no-bam-output指不輸出比對(duì)的BAM文件猿挚。
示例:rsem-calculate-expression \
--forward-prob 0 \
--paired-end \
--no-bam-output \
--alignments -p 16 -q ./04star_out/sample1_1Aligned.toTranscriptome.out.bam \
./05rsem_index/TAIR10 \
./06rsem_out/sample1_1
使用示例命令將會(huì)生成3個(gè)文件。sample1_1.genes.results是以gene_id為meta-feature的定量結(jié)果驶鹉,sample1_1.isoforms.results是以transcript_id為meta-feature的定量結(jié)果绩蜻。sample1_1.stat為統(tǒng)計(jì)文件的目錄。
2室埋、featureCounts使用
(1)定量
用法:featureCounts [options] -a <annotation_file> -o <output_file> input_file1 [input_file2]
<annotation_file>為注釋文件办绝;<output_file>指定輸出文件;input_file1 [input_file2]為一系列輸入文件姚淆。
[options]中需要注意的有-p指定量時(shí)將以片段計(jì)數(shù)而不是reads孕蝉,此參數(shù)針對(duì)雙端測(cè)序;-s同樣也指有無(wú)鏈特異性肉盹,0為默認(rèn)參數(shù)表示無(wú)特異性昔驱,1表示Reads1是正義鏈,2表示Reads1是反義鏈上忍;-T指定線程數(shù);-t表示計(jì)數(shù)的feature纳本;-g表示meta-feature窍蓝。
示例:featureCounts -p -s 2 -T 6 -a 00ref/TAIR10.gtf \
-o 06featurecounts_quant/sample1_1_counts.txt \
-t exon -g transcript_id \
05samtools_out/sample1_1_sorted.bam
使用示例命令將輸出2個(gè)文件,sample1_1_counts.txt記錄了定量結(jié)果繁成,sample1_1_counts.txt.summary統(tǒng)計(jì)了定量情況吓笙。
3、HTSeq-count使用
(1)定量
用法:htseq-count [options] alignment_file gff_file
alignment_file為比對(duì)得到的文件巾腕,通常為bam面睛;gff_file為注釋文件。
[options]中需要注意的有-f 指定alignment_file的格式尊搬,為bam或sam叁鉴;-r指alignment_file按什么排序,有pos和name佛寿,需要根據(jù)bam文件設(shè)置幌墓;-s指鏈特異性,no指無(wú)特異性冀泻,yes指reads1是正義鏈常侣, reverse表示reads1是反義鏈;-m指定量的模式弹渔,一般選擇union就可以胳施;-a表示若比對(duì)質(zhì)量小于a的值,則忽略此reads肢专;-t指定feature舞肆;-i指定meta-feature您没。
示例:htseq-count -f bam -r pos -s reverse -a 10 -t exon -i transcript_id -m union ./05samtools_out/sample1_1_sorted.bam 00ref/TAIR10.gtf > ./06htseq_quant/sample1_1_counts.txt
使用示例命令可以得到1個(gè)文件。sample1_1_counts.txt記錄了meta-feature的counts數(shù)胆绊,文件的末尾為定量的統(tǒng)計(jì)信息氨鹏。
4、RSEM压状、featureCounts 和HTSeq-count比較
使用RSEM定量時(shí)仆抵,需要先構(gòu)建索引文件,而featureCounts 和HTSeq-count用比對(duì)結(jié)果直接定量种冬,顯得方便很多镣丑,而且對(duì)于不會(huì)寫提取counts腳本的用戶來(lái)說(shuō),RSEM構(gòu)建表達(dá)矩陣的命令同樣讓人驚喜娱两。RSEM定量后的結(jié)果更加多樣莺匠,有g(shù)ene_id和transcript_id兩類。而且count十兢、TPM趣竣、FPKM都有,為后續(xù)差異分析提供便利旱物。但featureCounts 和HTSeq-count只能定量所指定的meta_feature遥缕,且結(jié)果單一。featureCounts的定量速度是顯而易見的快[6]宵呛。featureCounts與HTSeq-count對(duì)待多重比對(duì)reads的態(tài)度有所不同单匣。HTSeq-count采用全部丟棄的策略,而featureCounts更加靈活宝穗,可以通過(guò)參數(shù)-m進(jìn)行處理户秤。
(五)免比對(duì)的定量軟件
主要介紹kallisto和salmon。kallisto和salmon可以免去比對(duì)步驟逮矛,直接進(jìn)行定量鸡号,甚至在PC端就可以處理RNA-seq數(shù)據(jù)。
1橱鹏、kallisto使用
(1)構(gòu)建索引
用法:kallisto index [arguments] FASTA-files
FASTA-files為輸入的轉(zhuǎn)錄本膜蠢;[arguments]必要有-i,指定生成的索引文件莉兰;-k指定 k-mer 的長(zhǎng)度挑围,默認(rèn)為31,必要時(shí)可以修改糖荒。
示例:kallisto index -i 03kallisto_index/TAIR10 00ref/TAIR10.transcripts.fa
使用示例命令得到一個(gè)輸出文件TAIR10
(2)定量
用法:kallisto quant [arguments] FASTQ-files
FASTQ-file為樣本的reads1和reads2文件杉辙。[arguments]中,-i指定索引文件捶朵;-t指定線程數(shù)蜘矢;-o 指定輸出文件夾狂男;-g 指定注釋文件;--rf-stranded指reads1為反義鏈品腹,--fr-stranded指reads1為正義鏈岖食。
示例:kallisto quant --rf-stranded -t 4 -i ./03kallisto_index/TAIR10 -o ./04kallisto_quant/sample1_1/ -g 00ref/TAIR10.gtf 02clean_data/sample1_1_R1_paired_clean.fq.gz 02clean_data/sample1_1_R2_paired_clean.fq.gz
使用示例命令可以得到三個(gè)文件,Abundance.tsv記錄了定量情況
2舞吭、salmon使用
(1) 構(gòu)建索引
用法:salmon index [options]
-t指轉(zhuǎn)錄本文件泡垃;-i指輸出的索引所在目錄;-p指定線程
示例:salmon index -p 12 -t 00ref/Arabidopsis_thaliana.TAIR10.cds.all.fa \
-i 03salmon_index/TAIR10
使用示例命令可以得到15個(gè)文件
(2) 定量
用法:salmon index [options]
-i 表示索引文件所在目錄羡鸥;-l這里需要指定測(cè)序模式蔑穴,此時(shí)指定為A表示salmon自動(dòng)判斷;-g可以理解為meta-feature的對(duì)應(yīng)關(guān)系惧浴,加上此參數(shù)存和,salmon還可以對(duì)gene_id進(jìn)行定量,而不只是transcript_id衷旅;-1捐腿,-2分別指輸入的reads1和reads2;-p指線程數(shù)芜茵;-o指輸出目錄叙量。
示例:salmon quant -i 03salmon_index/TAIR10 -l A -g 1.txt \
-1 02clean_data/sample1_1_R1_paired_clean.fq.gz -2 02clean_data/sample1_1_R2_paired_clean.fq.gz \
-p 12 -o 04salmon_quant/sample1_1
使用示例命令可以得到7個(gè)文件。quant.sf是根據(jù)transcript_id定量的結(jié)果九串,quant.genes.sf是根據(jù)gene_id定量的結(jié)果。
3寺鸥、kallisto和salmon比較
對(duì)于免比對(duì)軟件kallisto[7]和salmon來(lái)說(shuō)猪钮,比對(duì)和定量是一步完成的。對(duì)于salmon[8]來(lái)說(shuō)胆建,可以通過(guò)添加-g參數(shù)烤低,將原來(lái)的meta-feature(transcript_id)轉(zhuǎn)換為我們想要的meta-feature(gene_id),甚至他還可以自己判斷測(cè)序類型笆载。整體來(lái)說(shuō)salmon表現(xiàn)更佳[8]扑馁,而kallisto是science常用[9]。
三凉驻、總結(jié)
上游分析包括質(zhì)量檢測(cè)腻要、質(zhì)量控制、比對(duì)涝登、定量雄家。質(zhì)量檢測(cè)和質(zhì)量控制使用fastqc和Trimmomatic既可,比對(duì)和定量軟件的選擇比較多胀滚。比對(duì)軟件STAR和HISAT2趟济,定量軟件featureCounts乱投、RSEM和HTSeq-count。比對(duì)軟件處理質(zhì)控后的數(shù)據(jù)后可以得到sam和bam文件顷编,其中記錄到reads比對(duì)的位置戚炫、可變剪接、比對(duì)質(zhì)量媳纬、配對(duì)reads比對(duì)到的位置等双肤。定量軟件基于比對(duì)軟件給出的sam或bam文件進(jìn)行定量。主要是根據(jù)比對(duì)到的位置進(jìn)行定量层宫,當(dāng)然也會(huì)有一定的篩選條件杨伙。
最常用的組合套裝是STAR-RSEM和HISAT2-featureCounts以及HISAT2-HTSeq-count。從整體上看萌腿,RSEM很全面的限匣,因?yàn)樗{(diào)用了STAR做聯(lián)配,所以效率高速度快毁菱,而且這個(gè)組合輸出的文件相當(dāng)豐富米死,除了基于基因組和轉(zhuǎn)錄本比對(duì)的bam文件,其定量文件還包含count贮庞、TPM峦筒、FPKM等,為后續(xù)分析提供很大便利窗慎。相比之下HISAT2-featureCounts的定量結(jié)果只包含count和TPM物喷,HISAT2-HTSeq-count的定量結(jié)果僅有count,比對(duì)結(jié)果只有sam遮斥,可以明顯感覺到這兩套組合的輸出文件并不豐富峦失,但勝在快捷、目的性強(qiáng)术吗。如果我們不需要STAR-RSEM產(chǎn)生的諸多文件尉辑,那么這兩套就足夠了牛哺。
免比對(duì)軟件kallisto和salmon對(duì)PC用戶是首選君仆,因?yàn)槠淇梢蕴^(guò)比對(duì)的步驟,直接拿質(zhì)控后的數(shù)據(jù)進(jìn)行定量娶视,所以需要的內(nèi)存和運(yùn)算量比組合套裝少得多隘蝎。尤其是salmon可以自動(dòng)判斷測(cè)序類型购啄,對(duì)于不是很了解整個(gè)流程和細(xì)節(jié)而又不想花時(shí)間學(xué)習(xí)的用戶來(lái)說(shuō),使用salmon再好不過(guò)末贾。
參考文獻(xiàn)
[1] Sahraeian Sayed Mohammad Ebrahim,Mohiyuddin Marghoob,Sebra Robert,Tilgner Hagen,Afshar Pegah T,Au Kin Fai,Bani Asadi Narges,Gerstein Mark B,Wong Wing Hung,Snyder Michael P,Schadt Eric,Lam Hugo Y K. Gaining comprehensive biological insight into the transcriptome by performing a broad-spectrum RNA-seq analysis.[J]. Nature communications,2017,8(1):59.
[2] 忘川水.RNA-seq轉(zhuǎn)錄組上游分析流程(2021年)[OL].https://zhuanlan.zhihu.com/p/369749492. 2021.
[3]Grüning Bj?rn,Dale Ryan,Sj?din Andreas,Chapman Brad A,Rowe Jillian,Tomkins-Tinch Christopher H,Valieris Renan,K?ster Johannes. Bioconda: sustainable and comprehensive software distribution for the life sciences.[J]. Nature methods,2018,15(7):475-476.
[4]劉永鑫Adam.數(shù)據(jù)的質(zhì)量控制軟件——fastQC[OL].https://blog.csdn.net/woodcorpse/article/details/106552332. 2018.
[5]Bolger, A. M., Lohse, M., & Usadel, B.Trimmomatic: A flexible trimmer for Illumina Sequence Data.[J]. Bioinformatics,2014,30(15):2114-20.
[6]Liao Y, Smyth GK and Shi W. featureCounts: an efficient general purpose program for assigning sequence reads to genomic features. Bioinformatics,2014,30(7):923-30.
[7]Bray Nicolas L,Pimentel Harold,Melsted Páll,Pachter Lior. Near-optimal probabilistic RNA-seq quantification.[J]. Nature biotechnology,2016,34(5):525-7.
[8]Patro Rob,Duggal Geet,Love Michael I,Irizarry Rafael A,Kingsford Carl. Salmon provides fast and bias-aware quantification of transcript expression.[J]. Nature methods,2017,14(4):417-419.
[9]馬省偉.使用salmon和kallisto進(jìn)行RNA-seq定量[OL].https://blog.sciencenet.cn/blog-1094241-1133526.html. 2018.