我需要把多個數(shù)據(jù)集的數(shù)據(jù)合到一起怎么辦?直接inner_join()或者cbind()就可以拿來用嗎?
當(dāng)然不行七冲!
進(jìn)行進(jìn)一步分析之前奏路,你還得去除一下批次效應(yīng)畴椰!
不同數(shù)據(jù)集在不同批次測序的結(jié)果可能會有很大差異。
去除批次效應(yīng)的方法主要包括以下三種:
1鸽粉,Deseq2包自帶去除批次效益的函數(shù)斜脂,只需要在計算差異基因時加上即可。(注意:分組信息和批次效應(yīng)信息不能完全一樣触机,否則不能做批次效應(yīng)消除帚戳。)
condition <- c(rep("Normal",3),rep("Tumor",3))
batch <- c(1,1,2,2,3,3)
sampleTable <- data.frame(condition=condition,batch=batch)
#樣本表達(dá)數(shù)據(jù)框列名需要與sampleTable一致。
row.names(sampleTable) <- colnames(expr)
dds <- DESeqDataSetFromMatrix(countData = expr, colData = sampleTable, design = ~batch+condition)
dds <- DESeq(dds)
注意:Deseq2計算差異分析只接受count數(shù)據(jù)儡首。
2片任,limma包的removeBatchEffect()函數(shù)
batch <- c(rep("1",10),rep("2",5))
expr <- removeBatchEffect(expr, batch)
So easy !
3,sva包的Combat()函數(shù)
batch <- c(rep("1",10),rep("2",5))
mod = model.matrix(~as.factor(group)) #group為分組信息蔬胯。此步操作為建模对供。
exp2 = ComBat(dat=exp, batch=batch, mod=mod, par.prior=TRUE, ref.batch="1")
上述去除批次效應(yīng)的方法選哪種都可以,但是生信大牛劉小樂教授實(shí)驗(yàn)室推薦用Combat()函數(shù)去除批次效應(yīng)比較多一些氛濒。