[BioC] Removing data already read in.... limma and marrayInput

Gordon Smyth smyth at wehi.edu.au
Thu Aug 7 13:56:07 MEST 2003

Dear Mick,

At 11:13 PM 6/08/2003, michael watson (IAH-C) wrote:
>Hi Guys
>Rather an odd title, but here goes...
>Basically I have read in my data in both limma (using read.maimages) and 
>marrayInput (using read.marrayRaw).
>I want to normalize my data using loess normalisation, however using both 
>packages (maNorm() and normalizeWithinArrays() methods) I get the error 
>that I have mentioned before on this list:

Obviously I would like to get to the bottom of this.

First point: I did a lot of work about a month and half ago to speed up the 
loess normalization in limma considerably. As a result, limma no longer 
makes any calls to loess (which is the function which calls simpleLoess), 
unless you are using method="composite". Can you ask you to install the 
development version of limma and see if you still get an error (quite 
likely you will).

Secondly: you haven't given use anything like enough information to solve 
any problems. You haven't told us the calling sequence you used, which 
normalization method was invoked et etc. In order to help us help you, you 
need to (i) try to isolate the problem by finding the smallest data set 
which will reproduce the error and (ii) show us the whole calling sequence 
and resulting output.

>Error in simpleLoess(y, x, w, span, degree, parametric, drop.square, 
>normalize,  :
>         NA/NaN/Inf in foreign function call (arg 1)
>In addition: There were 50 or more warnings (use warnings() to see the 
>first 50)
>The problem being that the whole thing bombs out and nothing has been 
>saved, so I make no progress.  NB just as an aside, using maNorm() and 
>"echo=TRUE" I can see how far maNorm() has got before bombing out;  with 
>normalizeWithinArrays() I can't :-(
>I have 60 arrays in my raw data set - reading them in took a lot of time, 
>and normalising them takes a lot of time.  But basically one or more of my 
>arrays is causing R's simpleLoess() function to bomb out, and thus I can't 
>normalise my data.
>Now through a process of elimination I can probably figure out with 
>array(s) are causing the problem, so is there a way of "removing" that 
>array from the objects I have already created using read.maimages() and 
>read.marrayRaw()?  Or is it a case of eliminating the bad ones and then 
>re-reading all the data in?

In the development version of limma, you can just subset your object. If RG 
is the object produced by read.maimages, then RG[,1] will be an object with 
just the first array, RG[,1:2] will be just the first two arrays, RG[,-12] 
will be all except array 12 etc etc. Similarly, RG[1:100,] will be just the 
first 100 genes. RG[1:100,1] will be the first 100 genes for array 1. You 
can see how it works.


>And does anyone have any idea why I am getting the above error??
>Thanks in advance for your help :-D

More information about the Bioconductor mailing list