fq比对建议
目前各流程的常规分析中,原始数据比对通常是比较占用存储空间的部分,这里以常用软件为例,给定一个原始数据比对、比对结果存放的参考建议。
大规模比对和格式转换需要较高的存储带宽,建议在normal队列上运行。
原始数据¶
大部分比对软件可直接使用fq.gz文件进行比对,因此无需解压fq.gz。原始数据从ncbi上下载的,sra文件转成fq.gz之后,需及时删除sra文件。
部分不能直接使用fq.gz的程序,可以尝试使用类似下面的变通方式。
#程序输出转gz
program file | gzip > out.gz
#gz文件为输入
program < gzip -dc file.gz
#综合
blastn -query <(gzip -dc ZS97_cds_10^6.fa.gz) -db ./MH63_cds -outfmt 6 |gzip > ZS97_cds_10000.gz
质控¶
fastp可以在完成质控的同时输出质控报告,运行速度非常快。如无特殊需求,质控建议使用fastp。多个样本跑完之后可以使用multiqc整合所有样本的质控报告。
module load fastp
fastp -w 8 -i 00-raw-data/sample.R1.fq.gz -o 01-clean-data/sample.R1.fq.gz -I 00-raw-data/sample.R2.fq.gz -O 01-clean-data/sample.R2.fq.gz
比对¶
对于大部分分析,只需要保留bam文件即可,因此可以在比对阶段直接输出bam或排序后的bam文件,以下是各常用比对软件直接输出bam的方式:
BWA¶
输出排序后的bam文件
module load BWA
module load SAMtools
bwa mem -t 8 genome.fa 01-clean-data/sample.R1.fq.gz 01-clean-data/sample.R2.fq.gz | samtools sort -@8 -o 02-read-align/sample_sorted.bam
sentieon-bwa¶
输出排序后的bam。绝大多数场景下,可以使用sentieon bwa代替bwa,速度有显著提升。
module load sentieon
sentieon bwa mem -R "@RG\tID:sample\tSM:sample\tPL:illumina" -t 8 -K 10000000 genome.fa 01-clean-data/sample.R1.fq.gz 01-clean-data/sample.R2.fq.gz | sentieon util sort -r genome.fa -o 02-read-align/sample_sorted.bam -t 8 --sam2bam -i -
hisat2¶
输出排序后的bam文件
module load hisat2
hisat2 -p 8 -x genome.fa -1 01-clean-data/sample.R1.fq.gz -2 01-clean-data/sample.R2.fq.gz | samtools sort -@8 -o 02-read-align/sample_sorted.bam
bowtie2¶
输出排序后的bam文件
module load Bowtie2
module load SAMtools
bowtie2 -p 8 -x genome.fa -1 01-clean-data/sample.R1.fq.gz -2 01-clean-data/sample.R2.fq.gz | samtools sort -@8 -o 02-read-align/sample_sorted.bam
tophat2¶
比对输出bam后,使用samtool进行排序,之后删除未排序的bam
module load Tophat
module load SAMtools
tophat2 -p 8 -o 02-read-align/sample 01-clean-data/sample.R1.fq.gz 01-clean-data/sample.R2.fq.gz
samtools sort -@8 -o 02-read-align/sample/accepted_hits_sorted.bam 02-read-align/sample/accepted_hits.bam
rm 02-read-align/sample/accepted_hits.bam
STAR¶
指定参数输出排序后的bam。STAR内存使用较多,建议在high队列运行。
module load STAR
STAR --runThreadN 8 --genomeDir genome_dir/ --outSAMtype BAM SortedByCoordinate --outFileNamePrefix 01-clean-data/sample --readFilesCommand gunzip -c --readFilesIn 01-clean-data/sample.R1.fq.gz 01-clean-data/sample.R2.fq.gz
去重¶
部分流程比对完成之后需要去重,推荐使用sambamba。
module load sambamba
sambamba markdup -t 8 -p --overflow-list-size 600000 --tmpdir='./tmp' -r 02-read-align/sample_sorted.bam 02-read-align/sample_sorted_rmd.bam
RNA-seq 一般不去重
ChIP-seq 一般要去重
Call SNP 一般要去重
RRBS 一般不去重
Targeted-seq (Amplicon seqencing) 一般不去重
WGBS 一般要去重
ATAC-seq 一般要去重
bam文件完整性检查¶
大量群体样本比对过程中,可能会因为各种原因导致作业中断,因此建议比对完成之后,检查所有bam文件的完整性,将bam文件不完整的样本重新比对。cram文件也同样适用。
for i in *.bam ;do (samtools quickcheck $i && echo "ok" || echo $i error);done
数据保存建议¶
对于样本数不超过200个的项目,流程定型跑完后,cleandata可以删除,保存rawdata即可。所有bam文件建议保存至多不过3个月,如有必要,重新比对得到bam时间也非常快。需要长期存放的bam文件,建议转成cram保存。如非必要,vcf.gz 不建议解压。流程中间步骤需要用到sam等大文本文件的情况,在写流程时,在使用完之后需立即压缩或者删除。
samtools view -C -T genome.fasta sample.bam > sample.cram
本站总访问量 次