RNA-seq流程[sra->bam]

一:启动conda环境
source activate apa
二:将sra转化为fastq格式

ls *sra |while read id; do (nohup fastq-dump --split-3  $id &);done

三:质量报告

ls *fastq | while read id;do (nohup fastqc -t 5  $id &);done
multiqc ./

四:质量处理

#双端
ls *1.fastq >1
ls *2.fastq >2
paste 1 2 >config
cat > qc.sh
dir=[绝对路径]
cat config | while read id
do
arr=($id)
fq1=${arr[0]}
fq2=${arr[1]}
nohup trim_galore -q 20 --phred33 --length 20 -e 0.1 --stringency 3 --paired -o $dir $fq1 $fq2 &
#q是质量一般选择20~30,统一选择phred33,-e是误差选择0.1,--stringency选择3(1太严格)
done

rm 1 2
bash qc.sh
#单端
ls *fastq | while read id;do (nohup trim_galore -q 20 --phred33 --length 20 -e 0.1 --stringency 3 -o [绝对路径] $id &);done

五:比对(hisat2)
index创建

# 如果hisat2目录存在物种index下载使用
# 其实hisat2-buld在运行的时候也会自己寻找exons和splice_sites,但是先做的目的是为了提高运行效率
# 提取gtf文件可变剪接的位置
hisat2_extract_splice_sites.py [绝对路径]/Gallus_gallus.GRCg6a.98.chr.gtf >gallus.ss
# 提取gtf文件外显子的位置
hisat2_extract_exons.py [绝对路径]/Gallus_gallus.GRCg6a.98.chr.gtf >gallus.exon
#建立索引
hisat2-build -p 10 --ss gallus.ss --exon gallus.exon [绝对路径]/Gallus_gallus.GRCg6a.dna.toplevel.fa ./gallus6 &

进行比对

#双端
ls *1.fq >1
ls *2.fq >2
paste 1 2 >config
cat > alignment.sh
cat config | while read id
do
arr=($id)
fq1=${arr[0]}
fq2=${arr[1]}
nohup hisat2 -p 4 -x [绝对路径]/mm10/genome -1 $fq1 -2 $fq2 -S $fq1.sam &
done

rm 1 2
bash alignment.sh
#单端
ls *fq | while read id;do (nohup hisat2  -p 20 -x [绝对路径]/mm10/genome -U $id -S  ${id%.*}.sam &);done
#比对结果查看
samtools flagstat xx.sam

六:对bam排序

ls *sam | while read id;do (samtools view -@ 10 -bS $id > ${id%.*}.bam & );done
ls *bam | while read id;do (samtools sort -@ 10 -o ${id%.*}.sort.bam $id );done
#下面为可选项,是否要对bam去掉一些read
#ls *1.bam | while read id;do (samtools view -@ 5 -bF 4 $id > ${id%%.*}.f.bam &);done

你可能感兴趣的:(RNA-seq流程[sra->bam])