01AnalysisFlow
RNA-seq基本分析流程
1.从NCBI下载原始数据
多线程同时下载
dataSRRID=(SRR8089897 SRR8089896 SRR8089895 ) for id in ${dataSRRID[@]}; do j=`echo ${id:0:6}` wget -c ftp://ftp-trace.ncbi.nih.gov/sra/sra-instant/reads/ByRun/sra/SRR/${j}/${id}/${id}.sra & done检查数据大小
### 使用curl命令访问NCNI网页 for i in `ls .|grep sra`; do j=`echo ${i:0:10}`; curl https://www.ncbi.nlm.nih.gov/sra/${j}|grep -E "<tbody><tr>.*</tr></tbody>" >>1 ; done ### 正则表达式将数据大小给匹配出来,之后网页内容可能会有所改变,正则表达式可能不固定 sed 's/.*<tbody><tr>\(.*\)<\/tr><\/tbody>/\1/g' 1|sed 's/.*align=\"right\">\(.*\)<\/td><td>.*/\1/g' >2 ### 与本地数据进行比较 ls -lh|grep sra |paste - 2 |less将sra文件转换成fastq文件
dataSRRID=(SRR8089897 SRR8089896 SRR8089895 ) for i in ${dataSRRID[@]}; do fastq-dump --split-3 ./rawdata/${i}.sra -O ./fast_dump/ & done
2.数据过滤 Trimmomatic
代码如下
PE 指定过滤数据为双端测序
thread 使用10个线程
R1.fastq.gz/R2.fastq.gz 对应双端测序数据
baseout 后面接输出文件路径,以及输出文件的前缀
ILLUMINACLIP 指定测序接头的文件
LEADING 去除头部read质量低于10的序列
TRAILING 去除尾部质量低于10的read
SLIDINGWINDOW 按照4个碱基长度进行滑动,去除平均质量低于20的read
MINLEN 去除长度小于50的read
写一个bash循环进行批量过滤原始数据
可以写成多个for循环进行跑
&作用是将for循环放入后台,进行并行计算,基本上100多G的数据 30分钟跑完
3.将数据比对到参考基因组
构建参考基因组索引'
接收基因组fasta序列文件,和索引生成路径及索引前称
进行比对
--fr链特异性建库--rf普通建库
4.计算基因表达量
将比对好的sam文件按照染色体位置进行排序后,使用stringtie比对
合并多个组织的表达量
手动计算指定区域的表达量
链特异性建库
https://www.cnblogs.com/renping/p/7875744.html
使用samtools 计算目标区域的表达量
tview能直观的显示出reads比对基因组的情况,和基因组浏览器有点类似。
需要事先利用利用上面讲的sort和建index命令执行完后,用下述命令。
Usage: samtools tview [ref.fasta]
出参考基因组的时候,会在第一排显示参考基因组的序列,否则,第一排全用N表示。 按下 g ,则提示输入要到达基因组的某一个位点。例子“scaffold_10:1000"表示到达第 10号scaffold的第1000个碱基位点处。 使用H(左)J(上)K(下)L(右)移动显示界面。大写字母移动快,小写字母移动慢。 使用空格建向左快速移动(和 L 类似),使用Backspace键向左快速移动(和 H 类似)。 Ctrl+H 向左移动1kb碱基距离; Ctrl+L 向右移动1kb碱基距离 可以用颜色标注比对质量,碱基质量,核苷酸等。30~40的碱基质量或比对质量使用白色表示; 20~30黄色;10~20绿色;0~10蓝色。 使用点号'.'切换显示碱基和点号;使用r切换显示read name等 还有很多其它的使用说明,具体按 ? 键来查看。
计算某个区域paired read数目
使用脚本计算某区域的read比对情况
脚本只支持链特异性建库的bam文件
Bam Flag :https://blog.csdn.net/xcaryyz/article/details/79257327
Last updated
Was this helpful?