[BioC] VSN exclusion of probes

Wolfgang Huber huber at ebi.ac.uk
Mon Nov 27 18:14:36 CET 2006


Dear Hans-Ulrich,

thanks for your good questions! Answers see below.

> I want to normalize two-color oligo-arrays with the VSN method. The 
> arrays contain some blank spots, which have a much stronger dye bias 
> than the oligo spots. Therefore, I do not want them to be used by the 
> LTS for parameter estimation. However, they should be normalized after 
> parameter estimation.
> 
> I tried the following code:
> (RG is a RGList object holding the Raw data)
> 
> RG <- backgroundCorrect(RG, method="subtract");
> y <- cbind(RG$G, RG$R);
> subSet <- RG$genes$Status != "blank";   # exclude blank spots
> vsnres <- vsn(y[subSet, ], strata=RG$genes$Block[subSet]);
> pars <- preproc(description(vsnres))$vsnParams;
> y <- vsnh(y, pars, strata=RG$genes$Block);
> 
> 
> The last statement leads to this error message:
> Error in vsnh(y, pars, strata = RG$genes$Block) :
>     Invalid argument 'e_y', must be a real matrix.
> 
> 
> What is wrong with my code? What is 'e_y'?

Try

    y <- vsnh(y+0, pars, strata=RG$genes$Block)

this should work. The (arcane) reason for this is that (I suppose) your 
matrix "y" is of storage mode "integer", while the C code in vsn expects 
type double. This is not really sth the user should be concerned with, 
and I plan to make a big and shiny revision of "vsn" over the Christmas 
holidays that will avoid this problem, and also allow to use missign 
values or weights as you suggest below (which you cannot presently do).


> Is there a convenient way to use weights (e.g. stored in 
> RG$genes$weights)  for parameter estimation? It would be nice to exclude 
> only the k-th probe on array i and not the k-th probe of all arrays (as 
> done above).

Best wishes
  Wolfgang


-- 
------------------------------------------------------------------
Wolfgang Huber  EBI/EMBL  Cambridge UK  http://www.ebi.ac.uk/huber



More information about the Bioconductor mailing list