SPAdes组装真菌基因组¶
随着高通量测序的迅猛发展,越来越多的物种的基因组被测序解读出来。基因组是分子生物学,遗传学,进化生物学等研究的基石,如果你研究的物种没有好的参考基因组序列,就不容易开展基因功能分析,转录组学相关,群体遗传等研究。所在实验室的主要研究物种没有好的基因组,开展实验时深感基因组的重要。不过基因组测序的成本和分析难度是一个门槛,需要大量的人力物力的投入。一般来说基因组小而简单就很容易进行测序组装注释,像绝大多数细菌以及部分真菌都是比较好的例子。所以今天以一个细菌基因组作为例子尝试和了解一下基因组测序组装。
1 测序原始数据的下载¶
- 对于小型真菌和细菌的原始测序数据,因为数据量较小,可以直接用wget从NCBI上下载:
wget https://sra-download.ncbi.nlm.nih.gov/traces/dra4/DRR/000228/DRR234452
- 对于较大的数据,可以用NCBI官方的sratoolkit下载
prefetch --option-file SRAID.txt & #batch download
- sra格式的数据需要进行解压
fastq-dump --split-3 --gzip *.sra # use --split-3 to identify the PE or SE data automatically
2 原始数据质控¶
NCBI上的数据通常是clean data,可以略过质控这一步。
ls *.gz|xargs fastqc -t 10
fastqc对两个双端测序的原始文件的质控结果为html格式文件。
如果指控结果不过,可以用fastp进行自动化的trim,该软件用C编写,而且自带adapter的数据库。
fastp -i reads1 -I reads2 -o reads1.out -O reads2.out
如果去除的reads过多,数据量不足50x,需要更改trim的参数。
3 错误序列矫正¶
此步骤为可选步骤,可以提供基因组的组装质量,速度较慢。
spades.py -1 R1_paired.fastq.gz -2 R2_paired.fastq.gz -o spades_error_corrected_reads -t 12 -m 240 --only-error-correction # -m Set memory limit in Gb
4 进行组装¶
前期可以用一些软件,如kmergenie进行kmer值的选择,也可以根据经验,比如PE150的最大kmer最好大于77,PE250的最大kmer最好大于等于127,kmer要求是偶数,SPAdes3支持的最大kmer值是127.
spades.py -1 R1_QCd_err_cor.fastq.gz -2 R2_QCd_err_cor.fastq.gz -o spades_kmers_set_careful_assembly -t 4 -k 21,33,55,77,89 --careful --only-assembler
也可以不设置kmer,让SPAdes自动选择
5 评估组装结果¶
计算N50,N90等指标
用QUAST,BUSCO等软件进行评估
6 其它¶
其它用法可以参考官方手册
常见几种用法整理如下:
- 二代混合pacbio_CLR reads组装
spades.py -1 [illumina1.fq] -2 [illumina2.fq] --pacbio [pacbio.fq] -t 12 -m 240 -o hybrid_pacbio
- 二代混合pacbio_CLR reads和contigs组装
spades.py -1 [illumina1.fq] -2 [illumina2.fq] --pacbio [pacbio.fq] -t 12 -m 240 -o hybrid_pacbio --trusted-contigs contigs.fasta
- 单独pacbip——CLR reads组装
spades.py -s pacbio.fastq --trusted-contigs contigs.fasta -t 12 -m 240 -o pacbio