使用的數據來自于一篇發(fā)在NC的擬南芥的基因組文章,文章用了minimap/miniasm 進行組裝季二,然后用racon和Pilon進行polish, 最后拼接處62 contigs 且N50 = 12.3?Mb谷徙。
wget ftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR217/003/ERR2173373/ERR2173373.fastq.gz
seqkit seqkit fq2fa ERR2173373.fastq.gz | gzip -c > ERR2173373.fasta
我用的是Canu進行組裝拒啰,參數如下
canu \
-p ath -d Athaliana\
useGrid=true \
gridOptions="-S /bin/sh -q wangjw" \
gridEngineArrayMaxJobs=20 \
gridEngineThreadsOption="-pe openmpi THREADS" gridEngineMemoryOption="-l mem_free=MEMORY" \
minReadLength=2000 maxThreads=15 maxMemory=60G \
genomeSize=100m \
rawErrorRate=0.300 \
correctedErrorRate=0.100 \
-nanopore-raw ERR2173373.fasta.gz
Canu默認Pacbi的rawErroRate是0.300, Nanopore是0.500完慧。但是根據我在自己建立的基因組學群里的討論谋旦,目前nanopore的單條read的錯誤率大概是12%,所以兩條read在overlap的時候屈尼,最差估計會有24%以上的序列差異册着,于是我嘗試設置了0.300. 但是由于Nanopore的錯誤率不是完全隨機(經群里的小伙伴告知),所以糾錯后正確率低于Pacbio, 所以我設置了0.100. 其他參數沒有修改脾歧, 最終我拼出了360條contig甲捏,N50=4.45M。
我檢查了下最后輸出的report文件. 第一部分表明鞭执,大部分的reads都是能夠overlap司顿。
Part II 關于多少數據用于糾錯,以及預期留下多少數據兄纺。默認Canu只選擇最長的40X進行糾錯大溜,可以用corOutCoverage=100
調整成100X. 注: rescued 表示的是剩下的沒有用于糾錯的read,他們可能是質粒囤热、線粒體等猎提。Canu保留的目的是為了避免在組裝時缺失序列信息。
Part III: 省下的就是由于太短,不能用于糾錯的部分锨苏。
最終結果疙教,我還用MUMMER分析了以下共線性,代碼如下伞租,
nucmer -t 20 --prefix ont2ath Athaliana.fa ath.contigs.fasta
mummerplot -p ont2ath ont2ath.delta --png --filter
基本上每條contig都主要和一條染色體存在很好的共線性贞谓,不存在contig的mis-assembly(錯誤組裝)現象。
下一步的計劃
- 只Correction 不Trim 直接組裝葵诈,比較組裝效果
- 提高糾錯前的錯誤率裸弦,保持糾錯后的0.1錯誤,比較組裝效果
- 保持糾錯前的錯誤率作喘,提高糾錯后的錯誤率理疙,比較組裝效果