[BioC] limma and composite normalization method
Gordon K Smyth
smyth at wehi.EDU.AU
Fri Jul 16 03:44:44 CEST 2004
> Hello all,
>
> I'm trying to use the composite method on limma_1.7.2 but I get an error
> when I normalizeWithinArrays:
You're right. This is a bug in limma that "composite" normalization
doesn't tolerate missing values (amongst the the control spots). I'll fix
it for limma 1.7.4 (not yet available).
> ----------------------------------------------------------------------
> Error in predLoess(object$y, object$x, newx, object$s, object$weights, :
> NA/NaN/Inf in foreign function call (arg 3)
> ----------------------------------------------------------------------
>
>
> I have NA values in my data. The "loess" function can handle NA's as it
> is done in normalizeWithinArrays:
>
> fit <- loess(y ~ x, weights = w, span = span, subset = controlspots,
> na.action = na.exclude, degree = 0, surface = "direct",
> family = "symmetric", trace.hat = "approximate",
> iterations = iterations)
>
> but I can't see the same to the "predict" function. I overrided that
> modifing normalizeWithinArrays as:
>
> global <- predict(fit, newdata = x)
> ----------------------------------------------
> global <- predict(fit, newdata = x[!is.na(x)])
>
>
> ¿Is this a correct way to do that or did I miss something?
This is correct but you need a bit more as well.
By the way, rather than using "composite" normalization I think it is
usually more flexible and effective to simply up-weight the control spots
in the ordinary normalization process. See modifyWeights().
Gordon
> Thanks in advance,
>
> D.
More information about the Bioconductor
mailing list