文章目录
RNA-seq 数据分析流程
相关软件安装
可以安装 conda,在后续其他软件安装时非常好用。可自行百度进行安装
可根据文献调研,转录组数据分析所需软件列表:
质控
fastqc , multiqc, trimmomatic, cutadapt ,trim-galore
比对
star, hisat2, bowtie2, tophat, bwa, subread
计数
htseq, bedtools, deeptools, salmon
在安装之前可以先 search一下安装包是否存在
# conda search packagename
conda install -y sra-tools
conda install -y trimmomatic
conda install -y cutadapt multiqc
conda install -y trim-galore
conda install -y star hisat2 bowtie2
conda install -y subread tophat htseq bedtools deeptools
conda install -y salmon
软件安装时,可以使用conda一步安装,也可以自行百度,下载源码,解压后添加环境变量,使用。
但是在使用sra-tookit时出现了问题,因为已经提前用conda安装好了sra-tools,后面我在网页下载解压了sratoolkit,并且在环境变量中添加好了,导致两个软件版本不合,使用prefetch下载网页数据时总是报错。所以需要卸载其中一种,保持版本一致。
自行安装sratoolkit可参考:sratoolkit安装
下载数据
进入网页,得到SRR_Acc_list.txt
SRR957677
SRR957678
SRR957679
SRR957680
批量下载
wkd=/home/meiling/baiduyundisk/RNA-seq #设置工作目录
cat SRR_Acc_List.txt | while read id; do (nohup prefetch ${id} &);done
#ps -ef | grep prefetch | awk '{print $2}' | while read id; do kill ${id}; done #在内地下载速度很慢,所以我杀掉这些下载进程
当显示所有下载都sucessful时,可以进行下一步
下载完成之后,文件会自动保存在目录:~/ncbi/public/sra/
mv ~/ncbi/public/sra/*.sra $wkd/rawdata
sra转fastq格式
使用fastq-dump
wkd=/home/meiling/baiduyundisk/RNA-seq #设置工作目录
for i in $wkd/rawdata/*sra
do
echo $i
fastq-dump --split-3 --skip-technical --clip --gzip $i ## 批量转换
done
原始数据如果是双端测序结果,fastq-dump配合–split-3参数,一个样本被拆分成两个fastq文件,如果是单端测序,就只生成一个文件
数据质控
fastqc生成质控报告,multiqc将各个样本的质控报告整合为一个。
wkd=/home/meiling/baiduyundisk/RNA-seq #设置工作目录
ls $wkd/rawdata/*gz | xargs fastqc -t 2
multiqc ./
得到结果如下:
├── [4.0K] multiqc_data
│ ├── [2.1M] multiqc_data.json
│ ├── [6.8K] multiqc_fastqc.txt
│ ├── [2.2K] multiqc_general_stats.txt
│ ├── [ 16K] multiqc.log
│ └── [3.4K] multiqc_sources.txt
├── [1.5M] multiqc_report.html
├── [236K] SRR1039508_1_fastqc.html
├── [279K] SRR1039508_1_fastqc.zip
├── [238K] SRR1039508_2_fastqc.html
├── [286K] SRR1039508_2_fastqc.zip
每个id_fastqc.html都是一个质量报告,multiqc_report.html是所有样本的整合报告
数据质控,过滤低质量reads,去接头
如果双端测序,运行一下代码,得到两列数据,config文件
mkdir $wkd/clean
cd $wkd/clean
ls /home/jmzeng/project/airway/raw/*_1.fastq.gz >1
ls /home/jmzeng/project/airway/raw/*_2.fastq.gz >2
paste 1 2 > config
并打开qc.sh,写入一下内容:
bin_trim_galore=trim_galore
dir='/home/jmzeng/project/airway/clean'
cat $1 |while read id
do
arr=(