R语言基因表达量转换(TPM、FPKM、RPKM)

基因表达量一般以TPM或FPKM为单位来展示。

TPM,Transcripts Per Kilobase Million
计算公式:
TPMi=(Ni/Li)*1000000/sum(Ni/Li+………+ Nm/Lm)
Ni:mapping到基因i上的read数; Li:基因i的外显子长度的总和

计算方法也同RPKM/FPKM类似,
先对每个基因的read数用基因的长度进行校正(标准化)
RPK <- count/(efflength/1000)

校正后的这个基因read数(Ni/Li)与校正后的这个样本的所有read数(sum(Ni/Li+………+ Nm/Lm))求商
RPK/sum(RPK)

最后再乘以10^6
RPK/sum(RPK)*1e6

TPM可以看作是RPKM/FPKM值的百分比。

counts2TPM <- function(count=count, efflength=efflen){
  RPK <- count/(efflength/1000)   #每千碱基reads (Reads Per Kilobase) 长度标准化
  PMSC_rpk <- sum(RPK)/1e6        #RPK的每百万缩放因子 (“per million” scaling factor ) 深度标准化
  RPK/PMSC_rpk              
}  

tpm <- as.data.frame(apply(counts,2,counts2TPM))
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值