仍然是两年前的笔记

1. prepare-reference

如果用RSEM对比对后的bam进行转录本定量,则在比对过程中要确保比对用到的索引是由rsem-prepare-reference产生的。

~/software/rsem/rsem-prepare-reference \
--transcript-to-gene-map ~/project/RNA-seq/ref_cds/gene_transcript.txt \ #作用是在后面的定量结果文件中,添加gene名称, 转录本名称两列,该文件每一行都是gene_id\ttranscript_id的形式,eg: cluster_11236 cluster_11236.1
--bowtie2 \ #RSEM可调用bowtie, bowtie2, STAR三种比对工具;这里选用bowtie2
~/project/RNA-seq/ref_cds/HC_cds_and_8sample_clustercds.fa \
~/project/RNA-seq/ref_cds/cds.byrsem

可以看到,单纯用bowtie2建的索引和rsem调用bowtie2建的索引是不一样的。

2. calculate-expression

用法分为两类,分别是从fa/fq得到表达矩阵,和从sam/bam得到表达矩阵(仍然要求是比对到rsem-prepare-reference生成的索引)。以单端的fq数据为例。

rsem-calculate-expression [options] upstream_read_file(s) reference_name sample_name
rsem-calculate-expression [options] --paired-end upstream_read_file(s) downstream_read_file(s) reference_name sample_name
rsem-calculate-expression [options] --sam/--bam [--paired-end] input reference_name sample_name
cat ~/project/RNA-seq/dir.txt | while read id
do
~/software/rsem/rsem-calculate-expression -p 8 --bowtie2 \
~/project/data/RNA-seq/${id}.fastq.gz \
~/project/RNA-seq/ref_cds/cds.byrsem \
--samtools-sort-mem 2G --fragment-length-mean 50 \ # 单端数据建议使用--fragment-length-mean和--fragment-length-sd
~/project/RNA-seq/map/${id}.rsem
done

完成之后得到这些文件,其中,rsem.genes.results和rsem.isoforms.results分别表示gene水平和转录本水平的定量结果。每一列含义:

less rsem.genes.results|head -n 1
gene_id transcript_id(s) length effective_length expected_count TPM FPKM
less rsem.isoforms.results|head -n 1
transcript_id gene_id length effective_length expected_count TPM FPKM IsoPct

后面用EBseq检验差异基因/转录本时,会使用到这两个文件。

3. Differential Expression Analysis using EBSeq

下面以gene水平差异分析为例。

3.1 generate-data-matrix

这一步提取上一步得到的每个样本定量结果文件中的expected_count列,组成数据矩阵。

~/software/rsem/rsem-generate-data-matrix \
SRR1.rsem.genes.results SRR2.rsem.genes.results \
SRR3.rsem.genes.results SRR4.rsem.genes.results \
SRR5.rsem.genes.results SRR6.rsem.genes.results \
SRR7.rsem.genes.results SRR8.rsem.genes.results \
> ~/project/RNA-seq/count/GeneMat.txt

3.2 run-ebseq

调用EBseq进行检验

~/software/rsem/rsem-run-ebseq \
GeneMat.txt 2,2,2,2 GeneMat.results #2,2,2,2表示4个condition, 每个condition有两个重复;顺序要和3.1中输入文件表示的condition的顺序一致 #会得到三个文件
GeneMat.results.condmeans GeneMat.results GeneMat.results.pattern #GeneMat.results.pattern
"C1" "C2" "C3" "C4"
"Pattern1" 1 1 1 1
"Pattern2" 1 1 1 2
"Pattern3" 1 1 2 1
"Pattern4" 1 1 2 2
"Pattern5" 1 2 1 1
"Pattern6" 1 2 1 2
"Pattern7" 1 2 2 1
"Pattern8" 1 2 2 2
"Pattern9" 1 1 2 3
"Pattern10" 1 2 1 3
"Pattern11" 1 2 2 3
"Pattern12" 1 2 3 1
"Pattern13" 1 2 3 2
"Pattern14" 1 2 3 3
"Pattern15" 1 2 3 4
#以Pattern14为例,1 2 3 3表示某基因表达:C1与C2不同,C3与C4相同
#四种condition如果有基因表达存在差异,就这些情况了 #GeneMat.results
#第一列是各个基因名称,接着15列是该基因符合该种Parttern的概率
#"MAP"为该基因最可能的模式;"PPDE":posterior probability of being differentially expressed,越大越好
"Pattern1" "Pattern2" "Pattern3" "Pattern4" "Pattern5" "Pattern6" "Pattern7" "Pattern8" "Pattern9" "Pattern10" "Pattern11" "Pattern12" "Pattern13" "Pattern14" "Pattern15" "MAP" "PPDE" #GeneMat.results.condmeans
#为每个样本合并重复之后的定量结果,如下图,这个结果可以用来控制fold change

3.3 control_fdr

控制FDR(错误发现率)来挑选差异基因

~/software/rsem/rsem-control-fdr \
GeneMat.results 0.05 GeneMat.de.txt

将GeneMat.results文件中,PPDE大于0.95的记录提取出来

因水平有限,有错误的地方,欢迎批评指正!

使用RSEM进行转录组测序的差异表达分析的更多相关文章

  1. 转录组差异表达分析工具Ballgown

    Ballgown是分析转录组差异表达的R包. 软件安装: 运行R, source(“http://bioconductor.org/biocLite.R”) biocLite(“ballgown”) ...

  2. 单细胞转录组测序数据的可变剪接(alternative splicing)分析方法总结

    可变剪接(alternative splicing),在真核生物中是一种非常基本的生物学事件.即基因转录后,先产生初始RNA或称作RNA前体,然后再通过可变剪接方式,选择性的把不同的外显子进行重连,从 ...

  3. 差异表达分析之FDR

    差异表达分析之FDR 随着测序成本的不断降低,转录组测序分析已逐渐成为一种很常用的分析手段.但对于转录组分析当中的一些概念,很多人还不是很清楚.今天,小编就来谈谈在转录组分析中,经常会遇到的一个概念F ...

  4. Differential expression analysis for paired RNA-seq data 成对RNA-seq数据的差异表达分析

    Differential expression analysis for paired RNA-seq data 抽象背景:RNA-Seq技术通过产生序列读数并在不同生物条件下计数其频率来测量转录本丰 ...

  5. RNA-Seq differential expression analysis: An extended review and a software tool RNA-Seq差异表达分析: 扩展评论和软件工具

    RNA-Seq differential expression analysis: An extended review and a software tool   RNA-Seq差异表达分析: 扩展 ...

  6. 表达谱(DGE)测序与转录组测序的差别

    DGE-seq和普通的transcriptomic profiling相比较有什么不同,有什么特点? DGE就是用酶将mRNA切断,只使用靠近poly A的一小段RNA去测序. #1 由于不是测定mR ...

  7. 单细胞转录组测序技术(scRNA-seq)及细胞分离技术分类汇总

    单细胞测序流程(http://learn.gencore.bio.nyu.edu) 在过去的十多年里,高通量测序技术被广泛应用于生物和医学的各种领域,极大促进了相关的研究和应用.其中转录组测序(RNA ...

  8. 转录组测序(RNA-seq)技术

        转录组是某个物种或者特定细胞类型产生的所有转录本的集合.转录组研究能够从整体水 平研究基因功能以及基因结构,揭示特定生物学过程以及疾病发生过程中的分子机理,已广泛应 用于基础研究.临床诊断和药 ...

  9. 转录组分析综述A survey of best practices for RNA-seq data analysis

    转录组分析综述 转录组 文献解读 Trinity cufflinks 转录组研究综述文章解读 今天介绍下小编最近阅读的关于RNA-seq分析的文章,文章发在Genome Biology 上的A sur ...

随机推荐

  1. Java,Scala:JDBCUtil,MySqlUtil,PhoenixJDBC

    Java,Scala:JDBCUtil,MySqlUtil,PhoenixJDBC pom.xml添加依赖 Java:方式一(亲测实用) 方式二:Scala 方式三:Java PhoenixJDBCU ...

  2. Scala:case class

    Scala:case class 1.Scala中class.object.case class.case object区别 1.1 class 和 object 关系 1.2 case class ...

  3. size_t 、wchar_t和 ptrdiff_t

    size_t在C语言中就有了. 它是一种"整型"类型,里面保存的是一个整数,就像int, long那样.这种整数用来记录一个大小(size).size_t的全称应该是size ty ...

  4. WLAN参数释义及优化建议

    1.AP覆盖范围或天线角度 1)参数释义 AP覆盖范围或天线角度直接影响到了终端连接到WLAN的信号强度. 2)优化建议 在设备的工程安装过程中,合理选择AP的位置,合理调整AP的覆盖方向或外置天线的 ...

  5. CyclicBarrier---可重用的循环栅栏

    很多文章只是提了下可重用,具体这个栅栏怎么可重用的,很多没有说明,这里会解开你的疑惑. CyclicBarrier是一个同步工具类,它允许一组线程互相等待,直到达到某个公共屏障点.与CountDown ...

  6. HDU-6881 Tree Cutting (HDU多校D10T5 点分治)

    HDU-6881 Tree Cutting 题意 \(n\) 个点的一棵树,要求删除尽量少的点,使得删点之后还是一棵树,并且直径不超过 \(k\),求删除点的数量 分析 补题之前的一些错误想法: 尝试 ...

  7. CF 1400G.Mercenaries 题解【SOSDP 组合数学】

    CF 1400G.Mercenaries 题意: 有\(n\)个佣兵,问雇佣至少一名雇佣兵且满足下述条件的方案数 如果雇佣第\(i\)个佣兵必须要求最终雇佣的总人数\(x\)满足\(l_i\le x\ ...

  8. Codeforces Round #657 (Div. 2) B. Dubious Cyrpto(数论)

    题目链接:https://codeforces.com/contest/1379/problem/B 题意 给出三个正整数 $l,r,m$,判断在区间 $[l,r]$ 内是否有 $a,b,c$ 满足存 ...

  9. Codeforces Round #340 (Div. 2) E. XOR and Favorite Number

    time limit per test 4 seconds memory limit per test 256 megabytes input standard input output standa ...

  10. Codeforces Round #479 (Div. 3) F. Consecutive Subsequence (DP)

    题意:给你一个长度为\(n\)的序列,求一个最长的\({x,x+1,x+2,.....,x+k-1}\)的序列,输出它的长度以及每个数在原序列的位置. 题解:因为这题有个限定条件,最长序列是公差为\( ...