R code
fpkm2tpm = function(fpkm){ exp(log(fpkm) - log(sum(fpkm)) + log(1e6)) } tpm = apply(expMatrix, 2, fpkm2tpm)
If the expression matrix has NA value
fpkm2tpm <- function(fpkm){ tpm <- exp(log(fpkm) - log(sum(fpkm,na.rm=T)) + log(1e6)) tpm[which(is.na(tpm))] <- 0 return(tpm) }
TPMi=( FPKMi / sum(FPKMj ) * 10^6