[BioC] normalize.loess in affy package

Tarca Adi Laurentiu ltarca at rsvs.ulaval.ca
Tue Oct 19 17:16:40 CEST 2004


Hi,
I have a question about the function normalize.loess implemented in affy 
package. Reading the code
I understand (perhaps wrong) that the correction of the intensities of 
probes is done as:

lg(Yi)*=lg(Yi)-1/J(Me_i1+Me_i2+...+Me_ij+...+Me_iJ)            eq1)

where lg stands for log2, Y is the vector of probes intensities in the 
slide i, J is the total number of slides,
Me_ij is the estimate of M=lg(Yi/Yj) in a M vs A plot, with A=1/2lg(YiYj).

This formula should come from the Dudoit et al(2002) idea of M vs A plots. 
For the case J=2, i.e. there are 2 slides only
Eq. 1 seems corect for me since:
lg(Yi)=A+M/2            eq2)
lg(Yj)=A-M/2             eq3)
obtained from the definition of M and A.
with the normalization rule: M'=M-Me_ij
i.e. Normalized log ratio M' equals raw log ratio M minus the estimated 
log-ratio Me_ij from the M vs A plot of the
two slides i and j.

If we replace the raw M in Eqs 2,3 with the normalized M', we obtain
lg(Y'i)=A+M/2 - Me_ij/2           eq4)
lg(Y'j)=A-M/2 + Me_ij/2           eq5)

which gives eqs. 6,7:
lg(Y'i)=lg(Yi) - Me_ij/2
lg(Y'j)=lg(Yj) + Me_ij/2

This matches perfectly the formula given in Eq. 1)

If we treat now the case J=3: so there are three slides i, j and k
Eq. 6 may be written for slide i J-1 times as there are J-1 pairs:

lg(Y'i)=lg(Yi) - Me_ij/2
lg(Y'i)=lg(Yi) - Me_ik/2
summing the J-1 equations and dividing by J-1:
we obtain Eq. 10:

lg(Y'i)=lg(Yi) -(Me_ij+Me_ik)/2/(J-1)

As you may see this formula matches perfectly Eq 1 if there are only two 
slides (J=2) but diverges for J>2.
Has anyone an idea what is wrong in all this? Am I doing something wrong or 
normalize.loess is incorrect?
Thanks,

Laurentiu Tarca



More information about the Bioconductor mailing list