关于readsCount、RPKM/FPKM、RPM(CPM)、TPM的理解

背景

feature

  • 定义:基因组上对具有不同性质区域的定义 (例如:gene/exon/intron/miRNA等)。
  • 优点:利于分类整理结果。

两类测序bias

  • 长度bias:相同表达丰度的转录本,往往会由于其基因长度上的差异,导致测序获得的Read(Fregment)数不同。总的来说,越长的转录本,测得的Read(Fregment)数越多。
  • 测序深度bias:由测序文库的不同大小而引来的差异。即同一个转录本,其测序深度越深,通过测序获得的Read(Fregment)数就越多。
  • 本文提到的RPKM/FPKM/RPM等方法都是为了消除这两类bias而进行的标准化。例如:RPM主要应用于sRNA(sRNA长度变化不大),来消除测序深度bias;RPKM/FPKM应用范围会更广泛,用于同时消除长度及测序深度这两种bias。
  • 下面的计算以exon为例。

1、几种丰度计算方法

reads Count

  • 定义:高通量测序中比对到exon上的reads数。可使用featureCount等软件进行计算。
  • 优点:可有效说明该区域是否真的有表达及真实的表达丰度。能够近似呈现真实的表达情况。有利于实验验证。
  • 缺点:由于exon长度不同,难以进行不同exon丰度比较;由于测序总数不同,难以对不同测序样本间进行比较。

RPKM/FPKM

  • 定义:
    RPKM: Reads Per Kilobase of exon model per Million mapped reads (每千个碱基的转录每百万映射读取的reads);
    FPKM: Fragments Per Kilobase of exon model per Million mapped fragments(每千个碱基的转录每百万映射读取的fragments)
    公式(1):RPKM=\frac{ExonMappedReads * 10^9}{TotalMappedReads * ExonLength}
    公式(2):FPKM=\frac{ExonMappedFragments * 10^9}{TotalMappedFragments * ExonLength}
    上述公式1 RPKM可从下面公式推导而出:
    公式(3): RPKM=\frac{(ExonMappedReads / TotalMappedReads * 10^6)}{ExonLength}*10^3
    等价于:RPKM = (RPM / ExonLength) * 10^3
    公式(4): RPKM=\frac{(ExonMappedReads * ReadLength)/ ExonLength * 10^9}{(TotalMappedReads * ReadLength/GenomeLength)}

解释:ExonMappedReads即为比对到该exon上的reads count;ReadLength是测序的Read长度; TotalMappedReads即为比对到基因组上所有reads count的总和;ExonLength 为该Exon的长度;ReadLength可消除;GenomeLength即为基因组全长,因为是相同基因组,所以该数值也可消除。
公式4中,TotalMappedReads * ReadLength/ GenomeLength为基因组上每个碱基的测序深度,ExonMappedReads * ReadLength / ExonLength可以简单的认为是该Exon上每个碱基的“测序深度”。两者相除,就得出该Exon上每个碱基相对基因组进行标准化的'测序深度'。因一般是相同物种,基因组一般相同,且测序长度相同,所以公式4换算并消去ReadLength,GenomeLength,就成为公式1的形式了。那么因Exon长短、测序深度造成的样本间造成的偏差,都可以消除。个人认为RPKM/FPKM应当能够消除两种类型的bias。

  • 优点:tophat-cufflinks流程固定,应用范围广。理论上,可弥补reads Count的缺点,消除样本间和基因间差异。
  • 讨论:有人说RPKM/FPKM标准化不合理,好像说的很有道理,也没太多时间整理了。黄树嘉的描述与RPKM/FPKM的差异:他的文章主要是说一个Exon整体转录了几次?主要描述为一个Exon整体转录情况。但是公式1RPKM主要计算的是Exon上单个碱基的转录情况,一个Exon上所有碱基转录情况的均值代表了该Exon转录情况。所以RPKM/FPKM可能与真实表达情况是有偏差的,但是应该能够大致反映真实的情况。
  • FPKM:与RPKM计算过程类似。只有一点差异:RPKM计算的是reads,FPKM计算的是fragments。single-end/paired-end测序数据均可计算reads count,fragments count只能通过paired-end测序数据计算。paired-end测序数据时,两端的reads比对到相同区域,且方向相反,即计数1个fragments;如果只有单端reads比对到该区域,则一个reads即计数1个fragments。所以reads count接近且小于2 *fragments count。

RPM

  • 定义:RPM/CPM: Reads/Counts of exon model per Million mapped reads (每百万映射读取的reads)
  • 公式:RPM = ExonMappedReads * 10^6 /TotalMappedReads
    RPM=\frac{ExonMappedReads * 10^6}{TotalMappedReads}
  • 优点:利于进行样本间比较。根据比对到基因组上的总reads count,进行标准化。即:不论比对到基因组上的总reads count是多少,都将总reads count标准化为10^6。sRNA_seq等测序长度较短的高通量测序经常采用RPM进行标准化,因为sRNA长度差异较小,18-35 nt较多,所以长度对不同的small RNAs相互比较影响较小 (优点:计算简单、方便。)。
  • 缺点:未消除exon长度造成的表达差异,难以进行样本内exon差异表达的比较。

TPM

  • 定义:TPM: Transcripts Per Kilobase of exon model per Million mapped reads (每千个碱基的转录每百万映射读取的Transcripts)
  • 公式:TPM=\frac{Ni/Li * 10^6}{sum(N1/L1+N2/L2 + ... + Nn/Ln)}
    解释:Ni为比对到第i个exon的reads数; Li为第i个exon的长度;sum(N1/L1+N2/L2 + ... + Nn/Ln)为所有 (n个)exon按长度进行标准化之后数值的和。
  • 计算过程:首先对每个exon计算Pi=Ni/Li,即按长度对reads count进行标准化;随后计算过程类似RPM (将Pi作为正常的ExonMappedReads,然后以RPM的公式计算TPM)。
  • 优点:首先消除exon长度造成的差异,随后消除样本间测序总reads count不同造成的差异。
  • 缺点:因为不是采用比对到基因组上的总reads count,所以特殊情况下不够准确。例如:某突变体对exon造成整体影响时,难以找出差异。

2、相互关系

  • 评价:以上几种计算exon表达丰度的方法,差异不是非常大。如果结果是显著的,那么采用上面任一计算方法大多均可找出显著结果。但是当表达丰度差异不是那么显著时,不易区分不同类别,需要根据实际需要选择对应的标准化方法。通常情况下首先推荐FPKM值;计算样本差异时(edgeR/DESeq2等),采用raw read count;计算sRNA丰度时,通常采用RPM值。
  • 注意:以上TotalMappedReads推荐首选比对到基因组上的总reads数,而不是比对到exon或者gene上总reads数。而且需要注意可能存在某一区域产生大量序列的情况,如:rRNA/tRNA及一些未注释区域等。如果该区域可能影响最终结果,TotalMappedReads需要减去这些产生过量扩增的序列或去除重复序列(Deduplicate很多时候都是很有必要的,samtools markdup:bam文件过滤和去重复)。这同样需要根据实际情况而定。

参考:
科学网-江纯阶
简书-jlyq617

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,230评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,261评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,089评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,542评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,542评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,544评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,922评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,578评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,816评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,576评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,658评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,359评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,937评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,920评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,859评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,381评论 2 342

推荐阅读更多精彩内容