二代數據組裝
- 構建contig:將所有小片段打成K-mer構建de Bruijn圖,然后會根據給定的參數對de Bruijn圖做一些化簡,最后連接K-mer的路徑即可得到contig序列 。
- 構建scaffold:將reads map到contig序列上去,利用reads之間的PE關系去判斷contig之間的連接關系,得到scaffold序列。
- 補缺:將成對reads比對到scaffold序列上,確定出一條reads比上contig序列而另外一條reads落入gap區域的比對信息,利用落入同一個gap區域的reads做局部組裝。
插入片段 | 測序長度 | 數據乘數 |
---|---|---|
200-1000bp | PE150/PE250 | 100X coverage |
2kb-40kb | PE150/PE50 | 1000X physical coverage |
SOAPdenovo2
SOAPdenovo2 是一款拼接速度快,用的比較多的拼接軟件,適合用來做
動植物基因組的拼接。
下載地址:https://sourceforge.net/projects/soapdenovo2/
參考腳本
SOAPdenovo2標準分析四個步驟
SOAPdenovo-63mer pregraph -s ./config.txt -o K41 -K 41 -p 6 -d 1 2>./pregraph.log
SOAPdenovo-63mer contig -g K41 -p 6 2>./contig.log
SOAPdenovo-63mer map -s ./config.txt -g K41 -k 35 -p 6 2>./map.log
SOAPdenovo-63mer scaff -g K41 -p 6 -F 2>./scaff.log
#-k 指定kmer大小
配置文件config.txt
max_rd_len=150 #允許的最長的reads,所有數據
[LIB]
avg_ins=200 #插入片段大小
reverse_seq=0 #標簽根據文庫選擇,0表示小片段數據
asm_flags=3 #組裝的程度,3表示即構建contig又連接scaffold
rd_len_cutoff=100 #允許的最長的reads,單組數據
rank=1#連接scaffold的參數,1k以下選1
pair_num_cutoff=3 #連接scaffold的參數
map_len=32 #連接scaffold的參數
q1=../data/ecoli_R1.fastq.gz
q2=../data/ecoli_R2.fastq.gz
結果文件
K41.scafSeq :拼接好的基因組序列
K41.scafStatistics :結果統計文件
SPAdes
SPAdes 是另一款推薦的二代拼接軟件,該軟件比較適合小基因組拼接,
拼接結果的長度和準確性都很好,但非常消耗計算資源。
軟件官網:https://cab.spbu.ru/software/spades/
參考腳本
spades.py -t 6 -k 51 --pe-1 1 ./ecoli_R1.fastq.gz --pe-2 1 ./ecoli_R2.fastq.gz -o spades_out
結果文件
scaffolds.fasta