[BioC] quantile normalization with common standards

Ido M. Tamir tamir at imp.ac.at
Tue Nov 4 15:12:57 CET 2008


Hi,

suppose I have a high density oligo array. This contains control
oligos, whose distribution should be the same across experiments (spike in),
and experimental oligos, whose distribution differs.

What I did until now was to scale my experimental oligos by the MAD of the 
control oligos ( a modification of limmas normalizeMedianAbsValues): I 
calculate a scaling factor for the control oligos and apply this factor onto 
the experimental oligos of each array.

like:
cmed <- log(apply(abs(M[scaleSubset,]), 2, mean, na.rm=TRUE))
cmed <- exp(cmed - mean(cmed))
print( paste("scaling factors:", paste( formatC(cmed, digits=2), 
collapse= " ")  ))
t(t(M)/cmed)

Now I would like to go one step further.
I would like to quantile normalize the control oligos. Then I would like to 
apply the transformation that was necessary for each array onto the 
experimental oligos.

Maybe this makes my intention clearer:
I don't want to apply the derived averaged distribution onto my experimental 
oligos - they are not the same (and I anyway know how to do this). I want to 
do the opposite of that and apply the function that was necessary to 
transform the control oligos of each array to the averaged quantile 
distribution onto my experimental oligos.
Its basically scaling like above, but not only taking MAD as a parameter,
but the whole difference in the distribution between


a) does this make sense.
b) how do I do it.

thank you very much,
ido



More information about the Bioconductor mailing list