- 理解比对(mapping, alignment)的含义
- 理解全局比对和局部比对的区别和应用
- 掌握应用bwa, samtools的使用
- 理解SAM, BAM文件格式
- Global alignment
- Local alignment
我们熟悉的blast和blat均属于第二类。
另外,不同长度的reads比对所用的策略也不一样,对于短reads,基于local alignment的软件如blast, blat不适合。
将短的reads回帖到长的参考基因组上,这一过程称之为mapping。一般reads数目很大,读长短,参考基因组较长,对于mapping软件有两个要求:
- 速度
- 准确性
Mapping软件众多,比较有名的包括bwa, soap, bowtie, novoalign
另外,由于真核生物mRNA不含有内含子,与一般的DNA mapping软件要求不一样,故转录组mapping使用的软件也不一样,转录组mapping软件比较有名的包括:STAR, hisat
本实验主要介绍一般意义上的DNA mapping软件的使用。
- Volume of data
- Garbage reads
- Errors in reads, and quality scores
- Repeat elements and multicopy sequence
- SNPs/SNVs
- Indels
- Splicing (transcriptome)
- How many mismatches to allow?
- Report how many matches?
- Require best match, or first/any that fit criteria?
module add bioinfo
mkdir lab2
cd lab2
mkdir data
mkdir result
cd soft
# 安装bwa
git clone https://github.com/lh3/bwa.git
cd bwa
make
# 安装samtools
curl -O -L https://github.com/samtools/samtools/releases/download/1.3.1/samtools-1.3.1.tar.bz2
tar jxvf samtools-1.3.1.tar.bz2
cd samtools-1.3.1
make
# 安装igv
curl -O http://data.broadinstitute.org/igv/projects/downloads/IGV_2.3.81.zip
unzip IGV_2.3.81.zip
/bs1/data/genomeLab/lab2/data/REL606.fa
/bs1/data/genomeLab/lab2/data/SRR098038.fastq.gz
# 准备数据和index参考基因组
cd data
ln -s /bs1/data/genomeLab/lab2/data/REL606.fa /bs1/data/genomeLab/lab2/data/SRR098038.fastq.gz ./
samtools faidx REL606.fa
mkdir index
cd index
ln -s ../REL606.fa ./
bwa index REL606.fa
cd ../../result
bwa aln ../data/index/REL606.fa ../data/SRR098038.fastq.gz > SRR098038.sai
bwa samse ../data/index/REL606.fa SRR098038.sai ../data/SRR098038.fastq.gz > SRR098038.sam
samtools view -b SRR098038.sam > SRR098038.bam
samtools sort -o SRR098038.sort.bam SRR098038.bam
samtools index SRR098038.sort.bam
# 显示比对结果
samtools tview SRR098038.sorted.bam ../data/REL606.fa
- 先组装,得到contigs,然后将contigs用bwa mem比对到参考基因组上
- 用igv显示比对结果
# 选K值
kmergenie SRR098038.fastq.gz
# 组装
minia -in SRR098038.fastq.gz -kmer-size 23 -out SRR098038
# mapping
bwa mem ../data/index/REL606.fa SRR098038.contigs.fa | samtools view -b - | samtools sort -o contig_mapping.sort.bam -
# 结果文件为contig_mapping.sort.bam