limma normexp background correction bug?
0
0
Entering edit mode
@gordon-smyth
Last seen 11 hours ago
WEHI, Melbourne, Australia
Dear Tobias, When you claim that software has a bug, you need to give a code example which others can run, so that we can see what you mean. Here's an example of such code. This example which shows that all the different normexp variants in backgroundCorrect() give similar but slightly different results, just as they are supposed to. Note that mle gives the best result in terms of preserving dynamic range, then saddle, then rma. On all the evidence that I see, the backgroundCorrect code is correct as it stands. > library(limma) > y <- rnorm(1000)+rexp(1000) > summary(backgroundCorrect(y,method="none")) V1 Min. :-2.31793 1st Qu.: 0.06568 Median : 0.80836 Mean : 0.94394 3rd Qu.: 1.68893 Max. : 6.70242 > summary(backgroundCorrect(y,method="normexp",normexp.method="mle")) Corrected array 1 V1 Min. :0.2355 1st Qu.:0.5135 Median :0.7216 Mean :0.9713 3rd Qu.:1.1371 Max. :5.8536 > summary(backgroundCorrect(y,method="normexp",normexp.method="saddle")) Corrected array 1 V1 Min. :0.2465 1st Qu.:0.4941 Median :0.6659 Mean :0.8795 3rd Qu.:1.0002 Max. :5.5100 > summary(backgroundCorrect(y,method="normexp",normexp.method="rma")) Loading required package: affy Loading required package: Biobase Welcome to Bioconductor Vignettes contain introductory material. To view, type 'openVignette()'. To cite Bioconductor, see 'citation("Biobase")' and for packages 'citation(pkgname)'. Corrected array 1 V1 Min. :0.2574 1st Qu.:0.3737 Median :0.4315 Mean :0.4848 3rd Qu.:0.5236 Max. :2.6150 > Date: Mon, 26 Oct 2009 18:40:42 +0100 > From: Tobias Straub <tstraub at="" med.uni-muenchen.de=""> > Subject: [BioC] limma normexp background correction bug? > To: bioc list <bioconductor at="" stat.math.ethz.ch=""> > > hi > > i was playing around with various background correction methods using > limma and discovered that whatever normexp.method i call for the > "normexp" method, the result is exactly the same. in fact the more i > digged into it the more i believe that normexp is not executed at all. > > looking at the code for backgroundCorrect it more looks like some junk > of code has been lost. i also checked the latest dev version of limma > (3.0.3), looks the same. instead of doing normexp the execution jumps > into some "rma" kind of thing that just leaves me confused. I suspect you're getting confused by the calling sequence of the switch() function and perhaps also the use of the Recall() function. Best wishes Gordon > any clues someone? any correct code around somewhere? > > best > T.
limma limma • 839 views
ADD COMMENT

Login before adding your answer.

Traffic: 561 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6