counts矩阵的标准化方法:tmm和vst、rlog.md 2.2 KB


title: Counts矩阵的标准化方法:TMM和VST、RLOG tags: [] id: '2159' categories:

    • 数据清洗 comments: false date: 2022-07-27 20:03:03 ---
  • TMM:The Trimmed Mean of M value by edgeR

  • VST:The variance stabilizing transformation by DESeq2

  • RLOG:The regularized-logarithm transformation by DESeq2

Counts矩阵来源于STAR匹配得到的结果df <- read.csv('GSE123379.csv', row.names = 1)

安装补充包

TMM方法

f_counts2TMM <- function(countsMatrix){
    require(edgeR)
    TMM <- DGEList(counts = countsMatrix)
    TMM <- calcNormFactors(TMM, method = 'TMM')
    cpm(TMM, normalized.lib.sizes = TRUE, log=F)
}
countsMatrix <- df[-(1:3)]
TMM <- f_counts2TMM(countsMatrix)
TMM

VST方法

f_counts2VST <- function(countsMatrix){
    require(DESeq2)
    conditions <- factor(rep("Control",ncol(countsMatrix)))
    colData_b <- data.frame(row.names = colnames(countsMatrix), conditions)
    dds <- DESeqDataSetFromMatrix(countData = countsMatrix,
                              colData = colData_b,
                              design = ~ 1)
    vsd <- vst(object=dds, blind=T) 
    assay(vsd)
}
countsMatrix <- df[-(1:3)]
VST <- f_counts2VST(countsMatrix)
VST

RLOG方法

f_counts2RLOG <- function(countsMatrix){
    require(DESeq2)
    conditions <- factor(rep("Control",ncol(countsMatrix)))
    colData_b <- data.frame(row.names = colnames(countsMatrix), conditions)
    dds <- DESeqDataSetFromMatrix(countData = countsMatrix,
                              colData = colData_b,
                              design = ~ 1)
    rld  <- rlog(object=dds, blind=T) 
    assay(rld)
}
countsMatrix <- df[-(1:3)]
RLOG <- f_counts2RLOG(countsMatrix)
RLOG