[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