RNA_seq(1)植物转录组实战(上)之salmon进行索引建立和转录组定量
RNA_seq植物实战
Author : yujia
目录:
- 概述
- salmon工具完成索引建立和生物学定量
- subread工具完成序列比对和定量
- DESeq2差异基因分析
- 总结
一、 概述
- 练习数据:数据来源于拟南芥,共16个样本,处理分为4组(0day,1day,2day,3day)
- 练习目的:熟悉两套RNA-seq差异基因表达分析的流程(salmon流程和subread流程)
- 数据存放地址:/public/study/mRNAseq/tair/
- 软件调用地址:/usr/local/bin/miniconda3/bin/
- 实战项目来源地址:Jimmy学长的生信菜鸟团博客:http://www.bio-info-trainee.com/2809.html (一个植物转录组项目的实践)
二、salmon工具完成索引建立和生物学定量
salmon是一款不通过序列比对就可以快速完成生物学定量的RNA-seq数据分析工具。它的使用流程包括两步:1.建立索引 2.对reads进行生物学定量(quantification)。所以,如果我们使用salmon工具来做生物学定量的话,会非常的快速简洁。以下是代码流程:
First step:使用salmon < index >选项对转录组建立索引
利用salmon建立索引的基本语法是:
salmon index -t athal.fa.gz -i athal_index
#index 代表建立索引
#-t .fa文件的路径
#-i 索引存放路径
所以我们的代码如下:
/usr/local/bin/miniconda3/bin/salmon index -t /public/study/mRNAseq/tair/Arabidopsis_thaliana.TAIR10.28.cdna.all.fa.gz -i /trainee/home/yjxiang/practice/index_file
执行后,会得到如下文件:
-rw-rw-r-- 1 yjxiang yjxiang 14K Aug 13 14:40 duplicate_clusters.tsv
-rw-rw-r-- 1 yjxiang yjxiang 751M Aug 13 14:40 hash.bin
-rw-rw-r-- 1 yjxiang yjxiang 357 Aug 13 14:40 header.json
-rw-rw-r-- 1 yjxiang yjxiang 115 Aug 13 14:40 indexing.log
-rw-rw-r-- 1 yjxiang yjxiang 412 Aug 13 14:40 quasi_index.log
-rw-rw-r-- 1 yjxiang yjxiang 116 Aug 13 14:40 refInfo.json
-rw-rw-r-- 1 yjxiang yjxiang 7.8M Aug 13 14:40 rsd.bin
-rw-rw-r-- 1 yjxiang yjxiang 247M Aug 13 14:40 sa.bin
-rw-rw-r-- 1 yjxiang yjxiang 63M Aug 13 14:40 txpInfo.bin
-rw-rw-r-- 1 yjxiang yjxiang 96 Aug 13 14:40 versionInfo.json
Second step:使用salmon < quant >选项完成生物学定量
salmon中进行生物学定量的基本语法是:
salmon quant -i athal_index -l A -1 samp_1.fastq.gz -2 samp_2.fastq.gz -p 8 -o quants/sample_quant
# quant是salmon中进行生物学定量的选项
# -i The -i argument tells salmon where to find the index
# -l A tells salmon that it should automatically determine the library type of the sequencing reads
#The -1 and -2 arguments tell salmon where to find the left and right reads for this sample
# -p 8 argument tells salmon to make use of 8 threads
# -o argument specifies the directory where salmon’s quantification results sould be written
由于我们一共有16个样本,要一一进行生物学定量,因此编写一个bash脚本完成批量处理:
#脚本地址存储在/trainee/home/yjxiang/practice#!/bin/bash
index=/trainee/home/yjxiang/practice/index_file
for fn in ERR1698{194..209};
do
samp=`basename ${fn}`
echo "Processing sample ${samp}"
/usr/local/bin/miniconda3/bin/salmon quant -i $index -l A \-1 ${samp}_1.fastq.gz \-2 ${samp}_2.fastq.gz \-p 6 -o /trainee/home/yjxiang/practice/quants/${samp}_quant
done
运行脚本之后,得到如下结果:
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:28 ERR1698194_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:38 ERR1698195_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:39 ERR1698196_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:39 ERR1698197_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:40 ERR1698198_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:40 ERR1698199_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:41 ERR1698200_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:42 ERR1698201_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:43 ERR1698202_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:43 ERR1698203_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:44 ERR1698204_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:44 ERR1698205_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:45 ERR1698206_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:46 ERR1698207_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:46 ERR1698208_quant
drwxrwxr-x 5 yjxiang yjxiang 4.0K Aug 13 15:47 ERR1698209_quant
每个文件夹里都有对应样本的quant结果,以样本ERR1698209为例,文件夹里含有这些文件,quant.sf 文件就是我们得到的定量结果:
drwxrwxr-x 2 yjxiang yjxiang 4.0K Aug 13 15:47 aux_info
-rw-rw-r-- 1 yjxiang yjxiang 307 Aug 13 15:47 cmd_info.json
-rw-rw-r-- 1 yjxiang yjxiang 551 Aug 13 15:47 lib_format_counts.json
drwxrwxr-x 2 yjxiang yjxiang 4.0K Aug 13 15:47 libParams
drwxrwxr-x 2 yjxiang yjxiang 4.0K Aug 13 15:00 logs
-rw-rw-r-- 1 yjxiang yjxiang 1.8M Aug 13 15:47 quant.sf
查看一下quant.sf,常见的TPM值、Numreads都在里面:
$ head -n 5 quant.sf
Name Length EffectiveLength TPM NumReads
ATMG00010.1 462 301.089 0.000000 0.000000
ATMG00030.1 324 166.891 0.000000 0.000000
ATMG00040.1 948 786.477 0.000000 0.000000
ATMG00050.1 396 236.034 0.000000 0.000000
salmon流程到此就结束了,根据得到的quant文件,我们可以在后续利用DESeq2, edgeR, limma等包进行下游的差异基因分析。现在我们来看subread工具如何完成RNA-seq数据的生物学定量。
RNA_seq(1)植物转录组实战(上)之salmon进行索引建立和转录组定量相关推荐
- NCBI|转录组原始数据上传
数据上传NCBI系列又来啦!今天小编来为大家演示的是转录组原始数据上传NCBI哦~ 01.申请Biosample编号 1.首先我们需要进入NCBI网页https://www.ncbi.nlm.nih. ...
- FPGA的设计艺术(4)STA实战之不同时序路径的建立保持时间计算
前言 本文首发:FPGA的设计艺术(4)STA实战之不同时序路径的建立保持时间计算 STA定义 STA定义为:时序验证,可确保各种电路时序是否满足各种时序要求. ASIC / FPGA设计流程中最重要 ...
- pandas中dataframe索引排序实战:pandas中dataframe索引降序排序、pandas中dataframe索引升序排序
pandas中dataframe索引排序实战:pandas中dataframe索引降序排序.pandas中dataframe索引升序排序 目录
- pandas把dataframe的数据列转化为索引列实战:单列转化为索引、多列转化为复合索引
pandas把dataframe的数据列转化为索引列实战:单列转化为索引.多列转化为复合索引 目录
- 三、索引优化(3)聚集索引上的非聚集索引
一.索引结构 在聚集索引上建立非聚集索引,在日常应用中经常发生. <?xml:namespace prefix="[default]" ns="http://www ...
- 近世代数--整环上的唯一分解问题--相伴是整环上的等价关系,最大公因子建立在相伴所划分的等价类上
近世代数--整环上的唯一分解问题--相伴是整环上的等价关系,最大公因子建立在相伴所划分的等价类上 相伴是整环上的等价关系 最大公因子建立在相伴所划分的等价类上 整除 最大公因子 博主是初学近世代数(群 ...
- mysql left join 索引失效_MySQL索引列上做操作导致索引失效案例分析
索引列上做操作导致索引失效 通常我们认为只要建立索引就可以万事大吉,以为只要建立就一定会使用到,可其实在索引列上的计算.函数.类型转换都可能导致索引失效,所以我们不仅要会创建索引,更重要的是如何正确的 ...
- Salmon构建索引的时间效率和计算效率明显高于STAR
前面我们评估了不同大小基因组基于STAR构建索引所需的计算资源和时间资源.不同大小数据集基于STAR进行比对所需的计算资源和时间资源和STAR比对速度与分配线程的关系. 将人类基因组按染色体拆分模拟不 ...
- MSSQL调优实战一 乱建聚集索引的后果
今天调优某电信的大型数据库,是一个日志型的表,其中有个自增列字段和时间(时间是每个小时小时来的,每个小时有大概23万条记录),以及点击次数等日志信息,数据量在4000万以上,sp_spaceused使 ...
- mysql查询一个表有哪些索引_如何查看某张数据库表上都有哪些索引(转)
索引使用简介 一. 关于索引的知识 要写出运行效率高的sql,需要对索引的机制有一定了解,下面对索引的基本知识做一介绍. 1. 索引的优点和局限 索引可以提高查询的效率,但会降低dml操作的效率. 所 ...
最新文章
- 牵引力教育学校分析UI设计师的薪酬水平
- freeRtos学习笔记 (7)信号量
- 百度App Objective-C/Swift 组件化混编之路(二)- 工程化
- 15分钟从零开始搭建支持10w+用户的生产环境(二)
- C#如何关闭指定进程
- PostgreSQL 内存OOM控制策略导致数据库无法启动的诊断一例(如何有效避免oom)
- layer 刷新某个页面
- 软件工程-软件需求规格说明书模板
- 传奇人物称号设置详细步骤
- 韩语在线翻译图片识别_如何用扫描全能王将图片转成文字?
- 将多张图片缩小合为一张图片(千图成像)
- 物联网工业串口转WiFi模块 无线路由WiFi模块的选型
- python回复qq信息_python脚本实现QQ自动发送、回复消息机器人
- 【Python从0到1】第三篇:基础语法(三)
- 定义Mat类型显示未定义
- 一位友人做足这些准备,终于拿到了FaceBook的offer
- 五分钟小知识之什么是前缀表达式
- Python3安装turtle库
- 帆软FineReport学习篇(二)
- 小甲鱼C++ 30 错误处理和调试技巧1 鬼扯内容
热门文章
- 只会编程的程序员没有前途
- Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩形、多边形、曲线、圆角矩形...
- 使用工厂方法模式实现多数据库WinForm手机号码查询器(附源码)
- 51CTO专访:谈谈SOC安全管理平台
- 病毒周报(100201至100207)
- 快餐店选址指南--转
- qi接收启动协议_无线充电Qi通信协议分析
- c语言可不可以不要.cpp文件,[求助]一个头文件和CPP文件的问题
- ibatis mysql 配置文件详解_Mybatis主配置文件的properties标签详解
- linux打开python3_Linux环境安装python3