聲明:本文部分內(nèi)容和部分圖片來源于網(wǎng)絡(luò)孟害。本文為生信小白學(xué)習(xí)筆記拒炎,不能保證專業(yè)名詞和內(nèi)容全部正確或權(quán)威。? ? ? ?
? ? ? ?下圖為某一條RNAseq從數(shù)據(jù)預(yù)處理挨务,序列回帖到數(shù)據(jù)可視化的工作流程击你,包含了較多的軟件(Linux環(huán)境運行)和若干個包(R語言環(huán)境運行),本系列將按下圖谎柄,對每一個步驟進行學(xué)習(xí)和理解丁侄。
HISAT2
簡介
? ? ? ?HISAT2是將下一代測序讀段結(jié)果基于圖比對到一組基因組(graph-based alignment of next generation sequencing reads to a population of genomes)。
? ? ? ?HISAT2是一種快速而靈敏的比對程序朝巫,可用于將下一代測序數(shù)據(jù)(包括DNA和RNA)比對到人類基因組和單個參考基因組上鸿摇。基于圖的BWT擴展劈猿,創(chuàng)造性地設(shè)計并完成了一個圖FM索引(GFM)拙吉。除了使用一個代表全人類基因組的全球GFM索引,HISAT2使用大量小的GFM索引揪荣,這些索引共同覆蓋了全基因組筷黔。這些小的索引(也被稱為局部索引),與集中比對方式結(jié)合在一起变逃,能夠?qū)崿F(xiàn)快速和準(zhǔn)確的序列比對必逆。這個新的索引方案被稱為層次圖片F(xiàn)M索引(HGFM)。
HISAT2工作原理
1. HISAT2應(yīng)用了基于bowtie2的方法處理很多低水平的用于構(gòu)建和查詢FM索引的操作揽乱。(*)
2. 與其他比對器相比名眉,HISAT2應(yīng)用了兩類不同的索引類型,代表全基因組的全局FM索引和大量的局部小索引凰棉,每個索引代表64000bp损拢。
3. 以人類基因組為例,創(chuàng)建了48000個局部索引撒犀,每一個覆蓋1024bp福压,最終可以覆蓋這個3 billion堿基的基因組。這種存在交叉(overlap)的邊界可以輕松的比對那些跨區(qū)域的read(可變剪切體)或舞。
4. 盡管有很多索引荆姆,但是HISAT2可以把他們使用合適的方式進行壓縮,最終只占4GB左右的內(nèi)存映凳。
模式
報告模式
? ? ? ?報告模式管理HISAT2尋找多少個比對以及如何報告它們胆筒。
通常,當(dāng)我們說一個讀段有一個比對,是指它有一個有效比對仆救。當(dāng)我們說一個讀段有多個比對時抒和,是指它有多個有效且彼此不同的比對方式。
? ? ? ?默認情況下彤蔽,HISAT2會對5‘和3’端進行溫和地剪切摧莽。
比對總結(jié)
當(dāng)HISAT2完成運行,會輸出運行結(jié)果顿痪。這些信息將輸入到‘標(biāo)準(zhǔn)錯誤’(stderr)文件中镊辕。對包含未匹配讀段地數(shù)據(jù)文件,HISAT2總結(jié)可能如下所示:
針對包含已匹配讀段的數(shù)據(jù)文件员魏,HISAT2總結(jié)如下所示:
Alignment rate越高表示HISAT2對該文件比對成功率越高丑蛤。
索引大小
hisat2-build能夠索引任何尺寸的參考基因組。對小于40億個核苷酸長度的基因組撕阎,hisat2-build使用32位數(shù)字在索引的不同位置建立一個‘小’索引。當(dāng)基因組更長碌补,hisat2-build能夠使用64位數(shù)字建立較大的索引虏束。小索引保存在.ht2文件中,而大索引會保存在.ht21文件中厦章。使用者無需擔(dān)心特定的索引的尺寸镇匀,HISAT2中的包裝腳本將自動生成并使用合適的索引。
性能調(diào)試
如果運行的電腦有多線程或多核袜啃,可以使用 -p
-p選項可以使HISAT2啟動一定數(shù)量的并行搜索線程汗侵。每一個線程運行在一個不同的中央處理器或核中,而所有的線程并行地查找比對群发,將比對量提高了大概并行線程的倍數(shù)(雖然在現(xiàn)實中晰韵,加速有時比線性較差)。
HISAT2使用
主要參數(shù)
??hisat2 [options]* -x <hisat2-idx> {-1 <m1> -2 <m2> | -U <r> | --sra-acc <SRA accession number>} [-S <hit>]
1.? -x?<hisat2-idx>
參考基因組索引的名字熟妓。該名稱是任何索引文件的名稱雪猪。HISAT2會首先尋找在現(xiàn)有文件中特定的索引,然后再在HISAT2_INDEXES指定地環(huán)境變量的目錄中搜索起愈。
2.? -1 <m1>
逗號分隔的文件列表包括了雙端測序的文件1只恨,例如,-1 flyA_1.fq,flyB_1.fq抬虽。使用此命令指定的文件-文件的順序必須與<m2>讀取-讀取的順序相一致官觅。
3.? -2 <m2>
逗號分隔的文件列表包括了雙端測序的文件2,例如阐污,-2 flyA_2.fq,flyB_2.fq休涤。對文件順序的要求同上。
4.? -U <r>
逗號分隔的文件列表包含待比對的未成功匹配(unpaired)讀段疤剑,例如滑绒,lane1.fq,lane2.fq,lane3.fq,lane4.fq
5.?--sra-acc <SRA accession number>
逗號分隔的SRA登錄號文件列表闷堡,例如,--sra-acc SRR353653,SRR353654
6. -s <hit>
寫入SAM比對結(jié)果的文件疑故。
選項
輸入選項
比對選項
計分選項
拼接對齊選項
報告選項
雙端測序選項
輸出選項
SAM選項
性能選項
其他選項
具體選項見鏈接杠览。
HISAT2比對操作
HISAT2提供了一些示例文件,這些示例文件的結(jié)果并不具有科學(xué)意義纵势,這些文件只供運行HISAT2和相應(yīng)的下游分析踱阿。
首先是獲取和安裝HISAT2,并設(shè)置相應(yīng)的環(huán)境變量到包含hisat2, hisat2-build和hisat2-inspect的HISAT2目錄中钦铁。
比對實例讀段
從HISAT2網(wǎng)站獲取待分析物種參考基因組软舌,下一步將待分析讀段比對到參考基因組上。命令如下:
$HISAT2_HOME/hisat2 -f -x $HISAT2_HOME/example/index/22_20-21M_snp -U $HISAT2_HOME/example/reads/reads_1.fa -S eg1.sam
本例使用的是使用hisat2-build構(gòu)建的索引文件(22_20-21M_snp)牛曹。這行命令將一組未配對的讀段數(shù)據(jù)比對到索引上佛点。比對結(jié)果被寫入進eg1.sam文件中,同時黎比,一段簡短的比對總結(jié)被寫入進console超营。
可使用下列語句查看SAM文件的前幾行。
head eg1.sam
可能會得到下圖類似的結(jié)果阅虫。
上圖前幾行(以@開始)是SAM文件表頭行演闭,其他行是SAM比對結(jié)果,每讀段或每對讀段一行颓帝。
雙端測序比對
為了使用HISAT2比對雙端測序數(shù)據(jù)米碰,首先,需要需要進入相同更多目錄然后運行以下命令:
$HISAT2_HOME/hisat2 -f -x $HISAT2_HOME/example/index/22_20-21M_snp -1 $HISAT2_HOME/example/reads/reads_1.fa -2 $HISAT2_HOME/example/reads/reads_2.fa -S eg2.sam
SAMtools轉(zhuǎn)換文件格式
SAMtools是管理和分析SAM和BAM比對文件的一組工具购城,提供了一個可以方便轉(zhuǎn)換SAM和BAM文件格式吕座。在HISAT2軟件進行序列比對后,可用SAMtools將SAM文件轉(zhuǎn)換為BAM文件工猜,命令如下:
samtools view -bS eg2.sam > eg2.bam
同時米诉,SAMtools也可以轉(zhuǎn)換為BAM文件的同時進行排序(版本需要1.2或更高)。命令如下:
samtools sort eg2.bam -o eg2.sorted.bam
對BAM進行排序時非常有用的篷帅,因為比對通常是壓縮的史侣,這對于長期存儲是很方便的,同時魏身,排序的BAM文件也有助于突變的發(fā)現(xiàn)惊橱。