RPKM vs. FPKM vs. TPM

1,全称

RPKM: Reads Per Kilobase Million
FPKM: Fragments Per Kiolbase Million
TPM: Transcripts Per Million

RPKM vs. FPKM

二者类似,RPKM针对单端测序,测得的一条序列就叫做一条reads;FPKM针对双端测序,测序得到的Read 1和Read 2合起来称为一个fragment。如果严格来区分的话,对双端测序,RPKM是FPKM的两倍。

RPKM/FPKM与TPM的区别主要在对测序深度和基因长进行normalize的先后顺序上。

计算RPKM的过程:
1,Count up the total reads in a sample and divide that number by 1,000,000 – this is our “per million” scaling factor.
2,Divide the read counts by the “per million” scaling factor. This normalizes for sequencing depth, giving you reads per million (RPM)
3,Divide the RPM values by the length of the gene, in kilobases. This gives you RPKM.

计算TPM的过程:
1,Divide the read counts by the length of each gene in kilobases. This gives you reads per kilobase (RPK).
2,Count up all the RPK values in a sample and divide this number by 1,000,000. This is your “per million” scaling factor.
3,Divide the RPK values by the “per million” scaling factor. This gives you TPM.

TPM对RPKM的改进

RPKM可以看成是用全长去参与测序深度的normalize,然后再对基因长度进行normalize;而TPM一上来就用基因长度进行normalize,第一时间消除了由于基因长度造成的bias,然后再参与后续测序深度的normalize。

可以理解为:在给每个基因分reads时,RPKM保证全长的基因公平参加分配,分完回来后,除以自己的长度可能会吃亏或赚到。而TPM用平均基因长度去参与分reads,分到的就能代表平均表达水平。
(很多地方都说TPM的优点是保证每个样本的TPM之和为一个固定的值,这样就一定好吗?我觉得这没啥依据)

RPKM/FPKM/TPM共同的局限

一段基因中片段不同区域的转录活性是不一样,上述三个值用了平均转录活性去代表整个基因的转录活性,有可能带来bias(比如一个很长的基因,只有其中一小段活跃表达,这样RPKM值很低,但他的表达其实是很高的)。

2024.3.27补充:TPM保证每个基因用同样的长度去分100万条reads,最终每个样本所有基因的TPM和都是100万。而FPKM是用基因是的实际长度去分100万条reads,再回来除以各自的基因长度,每个样本FPKM的总和不一样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值