自己找公司进行RNA-seq测序,得到counts数据后,用DESeq2包进行差异分析,得到的结果log2FC, pvalue, padj与公司的结果差别很大,公司也是用的DESeq2包进行的分析。经过3天的寻找,终于找到了原因。
在DESeq2包中进行差异分析,counts matrix只能包含需要比较的2组数据,如果还有其他组的数据,则会导致出来的结果有差异。如果一次测序分了3组以上,合适的做法是将大矩阵拆分为需要比较的2个组的小矩阵。
进行DESeq2分析的代码如下:
rm(list = ls())
options(stringsAsFactors = F)
exprSet <- read.csv("./ALL_sample_gene_Count.csv", header = T)
rownames(exprSet) <- exprSet$Gene.Symbol
exprSet <- exprSet[,-c(5:8)]
View(exprSet)
#### DESeq2 ####
suppressMessages(library(DESeq2))
exprSet=ceiling(exprSet)
group_list <- c( "group3", "group3",
"group5", "group5") #设置分组
group_list <- factor(group_list)
(colData <- data.frame(row.names=colnames(exprSet), group_list=group_list))
dds <- DESeqDataSetFromMatrix(countData = exprSet,
colData = colData,