FPKM 一般來說不太好用僚碎,轉(zhuǎn)為TPM進(jìn)行后續(xù)的分析比較合適。下面是FPKM轉(zhuǎn)化為TPM的R實現(xiàn):
#download FPKM data
FPKMquery <- GDCquery(project = "TCGA-LUAD",
data.category = "Transcriptome Profiling",
data.type = "Gene Expression Quantification",
workflow.type = "HTSeq - FPKM-UQ")
GDCdownload(FPKMquery, method = "api")
FPKMdat <- GDCprepare(query = FPKMquery)
# FPKMdat = readRDS("LUAD_FPKMdat.RDS")
FPKMexpdat = assay(FPKMdat)
#def func
FPKM2TPM <- function(fpkm){
exp(log(fpkm) - log(sum(fpkm)) + log(1e6))
}
#exec
TPMs <- apply(FPKMexpdat ,2,FPKM2TPM)