This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Affymetrix Data Using Mas5 Giving Large Fc Values

HI All,

I am new to Bioconductor and using affy+limma packages to analyze affymetrix data. Everything works well when I use RMA method in affy expresso but when I use MAS5 than in results I get values which are way to high for fold change (results below).

My Code:

data.mas <- expresso(data,bgcorrect.method="mas",normalize.method="qspline",pmcorrect.method="mas",summary.method="mas")
eset <- exprs(data.mas)
design <- model.matrix(~ 0+factor(c(1,1,1,2,2,2,3,3,3,4,4,4,)))
colnames(design) <- c("A.10.5", "B.11.5", "C.12.5","XYZ")
fit <- lmFit(eset, design)

contrast.matrix <- makeContrasts(A.10.5-WB,B.11.5-WB,C.12.5-WB,levels=design)
fit2 <- contrasts.fit(fit, contrast.matrix)
fit2 <- eBayes(fit2)
results <- (topTable(fit2, coef=1, adjust='fdr',sort.by='T', p.value = 1, n=30))

Results:

            ID               logFC    AveExpr         t      P.Value    adj.P.Val
19419 1435113_x_at        -1031.5628  328.50510 -75.54197 7.176278e-14 2.657009e-09
9834    1425528_at        -755.6372  291.45928 -71.46655 1.178248e-13 2.657009e-09
7586    1423280_at        -939.7628  305.33928 -67.55115 1.949728e-13 2.931156e-09
7912    1423606_at        -941.8785  309.39784 -59.27310 6.270564e-13 7.070218e-09
40160   1455865_at        -293.2026  100.87426 -48.26481 3.926156e-12 3.541471e-08

But when do preprocessing using RMA (code below) instead of MAS5 I get correct log FC values:

 data.rma <-  expresso(data,bgcorrect.method="rma",normalize.method="quantiles",pmcorrect.method="pmonly",summary.method="medianpolish")
eset <- exprs(data.rma)

Could you plese tell me what am I missing?

Thanks

AK

bioconductor r affymetrix limma

1 answer

What you're missing is that RMA values are log2 transformed whereas MAS5 values are not.

So you should either: log2-transform the MAS5 values before limma or (better) use RMA instead.

Log in to answer this question.