比对
比对是生物信息分析最常用的方法,就是把自己的数据拿去跟参考数据进行比较,得到差异的结果。而当所要分析的数据是变异时,差异的结果就是突变的碱基,也可以说是突变的基因。在DNA-seq中,常用的比对软件是bwa。另外还有bowtie2,但是bowtie2似乎在RNA-seq的比对中比bwa好,而在DNA中要稍微弱一些。除此之外,还有华大的soup,速度很快的subread等。
这里着重讲bwa。
比对之前
比对之前,当然是先要做一下质控。经典方法是使用fastqc进行质控报告的生成
| fastqc Illumina_B17NC_R1.fq.gz Illumina_B17NC_R2.fq.gz
|
从fastqc的结果看,这个样本的质量非常高(毕竟是卫生部生成出来做质量检测的),所以并不需要做进一步的过滤。但是这里也说一下怎么用fastp进行简单的过滤。
然后用cutadapt来剪掉adapter序列。目前的话,国产软件fastp也不错,可以自动完成上面的操作,同时下游的multiqc软件都支持fastqc以及fastp。
| fastp -i Illumina_B17NC_R1.fq.gz \
-I Illumina_B17NC_R2.fq.gz \
-o B17NC.clean_R1.fq.gz \
-O B17NC.clean_R2.fq.gz \
-w 8 -j B17NC.json -h B17NC.html
|
建立索引
推荐使用bwa进行比对。
bwa的下载与安装都很简单,虽然可以通过conda等软件安装,但是我觉得这样装软件没有灵魂,尤其是bwa这种常用的软件,还是直接装比较好。后面应该都不会介绍软件的安装了,这是一个基于google的基本技能。
| wget https://github.com/lh3/bwa/releases/download/v0.7.17/bwa-0.7.17.tar.bz2
tar -zxvf bwa-0.7.17.tar.bz2
cd bwa-0.7.17
make
|
我是十分建议把常用的软件加入环境变量的。
bwa和bowtie2都是用一种叫bwt的算法进行比对。在比对前,需要先创建索引,提高整个比对速度。
用bwa对参考基因建立索引
| bwa index Homo_sapiens_assembly38.fasta
|
还要建立fasta的索引。
| samtools faidx Homo_sapiens_assembly38.fasta
gatk CreateSequenceDictionary -R Homo_sapiens_assembly38.fasta
|
比对
使用bwa mem进行比对。
| bwa mem -t 8 Homo_sapiens_assembly38.fasta \
Illumina_B17NC_R1.fq.gz \
Illumina_B17NC_R2.fq.gz \
-R "@RG\tSM:B17NC\tID:B17NC\tPL:illumina\tPU:NCCL" \
> B17NC.sam
|
这样,就比对出了sam文件,sam文件的格式我觉得也是需要好好学习的。非常建议加入-R参数指定头信息,这样后面我们用GATK就不需要使用AddOrReplaceReadGroups来改了。