**80**wrote:

Hi everyone,

I have some microarray data files containing two sets of samples in normal and disease condition. I have tested that the data also contain significant batch effects with hybridization time. However, the positive hits I obtained using the following approaches are very different (using the same cutoff value in decideTests function). I think I am supposed to use the first approach but I am surprised to see a big difference between the two approaches. could anyone help figure out the reasons?

Thanks,

Zhi Xie

NIH/NHLBI

Here eset is the expression dataset after RMA function.

**Approach 1**:

# Consider batch effects in the model matrix design<-model.matrix(~0+condition.factor+batch.factor) # fit the linear model fit<-lmFit(eset,design)

Then I create contrast matrix and compute coefficients and errors using contrast.fit function

**Approach 2**:

# remove batch effects first exp.eset.rm.batch<-removeBatchEffect(exprs(eset),batch.factor) # only consider normal and disease conditions in the model matrix design<-model.matrix(~0+condition.factor) # fit the linear model fit<-lmFit(eset.rm.batch,design)

where eset.rm.batch is the expression dataset containing expression values from exp.eset.rm.batch table

**37k**• written 8.5 years ago by Xie, Zhi NIH/NHLBI [E] •

**80**