上一篇推文讲了bulk RNA-Seq 的数据清洗部分,接下来就是将清洗后的数据比对到参考基因组上(有参)。如果没有参考基因组,那么就需要我们自己去组装基因组了。
mapping常用的工具
1.1 BWA
包括BWA-backtrack, BWA-SW and BWA-MEM,第一个算法设计用于 Illumina 序列读取高达 100bp,而其余两个用于更长的序列,范围从 70bp 到 1Mbp。对于 70-100bp Illumina 读取,BWA-MEM 也具有比 BWA-backtrack 更好的性能。
1.2 Bowtie2
它特别擅长将大约 50 到 100 个字符的读取与相对较长的(e.g. mammalian)基因组对齐。Bowtie 2 通常是比较基因组学的第一步,包括call snp、ChIP-seq、RNA-seq、BS-seq。
1.3 Hisat2
Hisat2 是一种快速灵敏的比对程序,用于将下一代测序读数(DNA 和 RNA)映射到人类基因组群以及单个参考基因组,主要用于RNA-Seq数据。这里我选择hisat2做比对数据处理
2.参考序列的准备 2.1 需要准备的三个文件 基因组序列(genome.fa) 基因注释文件(genes.gtf) 蛋白序列文件(proteins.fa)
2.2 常用的参考基因组下载地址
数据预处理
3.1 基因组序列一般可以直接使用
3.2 注释文件可能会下载到gff格式的,需要用gffread做转换
gffread -T -o genes.gtf genes.gff
3.3 蛋白序列一般也是可以直接使用的(有时候需要注意基因的编号是否一致,以及是否有可变剪切)
4.比对到参考基因组
bulk RNA-Seq 不包含内含子,所以在重新比对回参考基因组时,会被中间的内含子隔开,这种情况叫做splice-alignment。
4.1 软件安装(linux)
conda install hisat2 conda install samtools
4.2 给参考基因组构建Index
1 2 3 hisat2-build genome.fa \ #参考基因组 ./index/genome \ #index名称 1>hisat2-build.log 2>&1 #将日志信息存在.log文件里面
4.3 hisat2比对
hisat2 --new-summary #使用新的日志格式 -p 4 #线程数 -1 ../clean_data/CER3_1_R1.clean.fastq.gz #质控过滤后的文件,双端测序 -1 -2 来指示 -2 ../clean_data/CER3_1_R2.clean.fastq.gz \ 2>CER3_1.mapping.log | samtools view -o CER3_1.bam #比对完的结果通过管道符交给samtools转为bam文件,这一步是为了节省空间 输入:参考基因组的index文件,每个样本的测序数据
输出:bam格式的比对结果 可以使用awk,或者for循环批量处理
使用IGV查看比对结果 IGV是broad institute 开发的数据可视化软件,用来可视化sam/bam文件。software.broadinstitute.org/software/ig…