與核基因組相比,細胞器基因組相對來說,更為保守,並且序列較短,更加易於組裝,僅僅根據二代測序reads即可進行組裝。
下面簡單介紹我在本項目中的方法,僅供參考。
1 數據
本次我使用的二代數據為50X。下機后,首先通過fastq對其進行過濾,改軟件操作較為簡單,僅僅使用-q 20進行過濾,得到clean reads、
2 葉綠體參考基因組
因為葉綠體基因組非常的保守,因此,我選擇同科植物的葉綠體基因組。據文獻記載,因為葉綠體為環狀,因此將其葉綠體復制同樣的拷貝串聯在其對應的序列后面,防止有reads沒有比對到環的連接出。將其合並后,作為一個總的葉綠體ref,chloropast.fa
3 篩選出葉綠體的reads
因為二代測序提取的DNA,除了主要的核DNA外,還有葉綠體,線粒體DNA等,因此首先需要將屬於葉綠體的信息調取出來。即將reads比對到葉綠體ref。
## 我選擇bowtie2
bowtie2-build chloropast.fa chloropast.fa
bowtie2 -q -x chloropast.fa -1 short_reads1 -2 short_reads2 -p 10 -S short.sam
samtools view -bS -o short.bam short.sam
samtools sort -@ 5 -o short.sorted.bam short.bam
samtools index short.sorted.bam
## 篩選比對上的成對兒reads即為葉綠體相關的reads
samtools view -u -f 1 -F 12 short.sorted.bam -o short.sorted.aligned.bam
samtools sort -n -o short.sorted.aligned.sorted.bam short.sorted.aligned.bam
## 將bam-2-fastq
bedtools bamtofastq -i short.sorted.aligned.sorted.bam -fq short.sorted.aligned.sortedR1.fastq -fq2 short.sorted.aligned.sortedR2.fastq
4 組裝
本次選用unicycler 進行二代reads的組裝,組裝軟件有很多,比如SoAPdenovo, ABySS, SPAdes, NOVOPlasty等,可以進行不同的嘗試。
unicycler -1 $short_readsR1_aligned -2 $short_readsR2_aligned -t 10 -o Cp.fa
該軟件可自己進行polish,如果用起他的軟件進行組裝,可以使用plion進行polish即可
unicycler的安裝可以使用condan即可
conda create -n chloroplast -c uioconda unicycler python=3.6
5 組裝結果
輸出文件assembly.fasta為最終的組裝結果,可將其和對應物種(最近的物種)的葉綠體基因組進行比較,確定其順序,並進行連接。本次我組裝的結果較好,並不存在gap,與已知的葉綠體基因組比較具有非常好的共線性。
后續說明
如果沒有一個較為好的葉綠體基因組,必須通過比對的方式根據overlap對其進行連接。此外,如果存在gap,則必須對其進行補gap
- 可以通過GapCloser進行填補gap
- 多種軟件的組裝,進行填補gap
使用pilon的方法即將二代reads比對到組裝好的結果,得到bam文件,進行polish
pilon --genome assembly.fasta --frags bwa.sort.bam --output F.pilon1 --changes --threads 4
如果組裝質量較好,下面就可以對其進行注釋。。后續在進行