这一章讲述了上游分析
QC
1.barcode/adaptor的影响
人们常用的去除adaptor的软件有cutadapt、skewer等,但是近年来后起之秀TrimGalore因为其使用简单,会自动侦测adaptor而受到越来越多的欢迎。
原始的fastq文件往往是包含adaptor以及barcode的。如果不去除adaptor将会对下游的mapping产生影响。如果5'端存在adaptor的话,影响会非常严重。如果序列很短而3'端又存在adaptor的话,影响会较为严重。如果序列较长,影响会减弱,但终归是不利的影响
使用TrimGalore去除adaptor,单端
trim_galore -o output/folder input/fastq/file.fq.gz
双端
trim_galore --paired -o output/folder input/fastq/f_R1.fq.gz input/fastq/f_R2.fq.gz
mapping
所谓mapping,就是将测序得到的短序快速地比对至参考基因组
2.DNA-mapping
人们常用的mapping软件有BWA以及bowtie/2。如果对于比对精度优先的用户,多会使用BWA做为mapping软件。但是对于速度优先的用户,多会使用bowtie进行mapping
bowtie2
## single end
bowtie2 -x path/to/species/Sequence/Bowtie2Index/genome \
-U fastq/trimmed/by/trim_galore/file_trimmed.fq.gz \
-S output/sam/file.sam
## paired end
bowtie2 -x path/to/species/Sequence/Bowtie2Index/genome \
-1 fastq/trimmed/by/trim_galore/file_val_1.fq.gz \
-2 fastq/trimmed/by/trim_galore/file_val_2.fq.gz \
-S output/sam/file.sam
BWA
## single end
bwa mem path/to/species/Sequence/BWAIndex/genome \
fastq/trimmed/by/trim_galore/file_trimmed.fq.gz \
> output/sam/file.sam
## paired end
bwa mem path/to/species/Sequence/BWAIndex/genome \
fastq/trimmed/by/trim_galore/file_val_1.fq.gz \
fastq/trimmed/by/trim_galore/file_val_2.fq.gz \
> output/sam/file.sam
对于BWA,注意mem,backtrack和aln这三个参数:
mem:比对长度为100bp以上的序列时,效果好
backtrack:比对长度为100bp以下的序列时,效果好
aln:gap的数据(有缺失片段的)
2.RNA-seq
tophat
tophat --output-dir output/dir \
--GTF path/to/species/Annotation/genome.gtf \
path/to/species/Sequence/Bowtie2Index/genome \
fastq/trimmed/by/trim_galore/file_trimmed.fq.gz
使用HISAT进行mapping
## single end
hisat2 -x path/to/species/hisat2/genome_snp_tran \
-U fastq/trimmed/by/trim_galore/file_trimmed.fq.gz \
> output/file.sam
## paired end
hisat2 -x path/to/species/hisat2/genome_snp_tran \
-1 fastq/trimmed/by/trim_galore/file_val_1.fq.gz \
-2 fastq/trimmed/by/trim_galore/file_val_2.fq.gz \
> output/sam/file.sam
利用samtools排序
#sam文件转换成bam文件
samtools view file.sam > file.bam
#排序
samtools sort file.bam -o file.sort.bam
#建立索引方便查询
samtools index file.sort.bam
bam转bed
bamToBed -i reads.bam > reads.bed
picard去重
java -Xmx2048m -jar picard.jar CollectRnaSeqMetrics \
I=input.bam \
O=output.RNA_Metrics \
REF_FLAT=ref_flat.txt \
STRAND=SECOND_READ_TRANSCRIPTION_STRAND \
RIBOSOMAL_INTERVALS=ribosomal.interval_list
Chip-seq peak calling
去除PCR duplicates
MarkDuplicates INPUT=file.sort.bam \
OUTPUT=file.rmdup.bam \
METRICS_FILE=fil.picard_info.txt \
REMOVE_DUPLICATES=true \
VALIDATION_STRINGENCY=LENIENT
peak calling
macs2 callpeak -t treatment.rmdup.bam \
-c input.rmdup.bam \
-f BAM -g hs -n output.sample1
数据查看
推荐IGV(Integrative Genome Viewer)
和UCSC genome browser