[BioC] About subsampling of VST in lumi

Pan Du dupan at northwestern.edu
Fri Dec 14 15:16:48 CET 2007


Hi Ligia,

Thanks for your report.
Yes, we use down-sampling to speed up the parameter estimation. If you want
to use all the data points, you can set the parameter "nSupport" of vst
function as the length of the vector. I will add this to the vignette or
help file. Thanks!


Pan


On 12/14/07 5:18 AM, "ligia at ebi.ac.uk" <ligia at ebi.ac.uk> wrote:

> Dear Pan Du,
> 
>> From what I understand when looking at "vst", the random subsampling that
> affects my data occurs at step 4 below:
> 
> 1       if (c3 != 0) {
> 2            selInd <- selInd & (std^2 > c3)
> 3            dd <- data.frame(y = sqrt(std[selInd]^2 - c3), x1 = u[selInd])
> 4            if (nrow(dd) > 5000   dd <- dd[sample(1:nrow(dd), 5000), ]
> 5            lmm <- lm(y ~ x1, dd)
> 6            c1 <- lmm$coef[2]
> 7            c2 <- lmm$coef[1]
> 8        }
> 
> because my "dd" matrix has around 5500 rows. Maybe it would be nice to
> have the option to turn this off, or add the option to provide the max
> value allowed for nrow(dd)...
> 
> Cheers,
> Lígia
> 
> 
>> Dear Ligia
>> 
>> I believe this is because they random subsample the data to "speed
>> processing", see the man page and the  nSupport parameter.
>> 
>> I cc Pan Du with the suggestion to make the explanation of this in the
>> man page more clear. Is there an option to switch off the random
>> subsampling?
>> 
>>   Best wishes
>> Wolfgang
>> 
>> 
>> 
>> ligia at ebi.ac.uk ha scritto:
>>> Hi Wolfgang,
>>> 
>>> I noticed a peculiar behaviour in lumi package: when I apply the
>>> variance
>>> stabilizing transformation,
>>> it gives slightly different results each time I run the method. See
>>> below
>>> for a subset of the data:
>>> 
>>> 
>>>> load("dat.rda")
>>>> library("lumi")
>>> 
>>>> x1 <- lumiT(dat, method="vst", ifPlot=!TRUE)
>>> 2007-12-13 10:56:35 , processing array  1
>>> 2007-12-13 10:56:35 , processing array  2
>>> 2007-12-13 10:56:35 , processing array  3
>>> 2007-12-13 10:56:35 , processing array  4
>>> 
>>>> x2 <- lumiT(dat, method="vst", ifPlot=!TRUE)
>>> 2007-12-13 10:56:36 , processing array  1
>>> 2007-12-13 10:56:36 , processing array  2
>>> 2007-12-13 10:56:36 , processing array  3
>>> 2007-12-13 10:56:37 , processing array  4
>>> 
>>> 
>>>> table(exprs(x1)==exprs(x2))
>>> 
>>> FALSE  TRUE
>>> 88705     3
>>> 
>>>> range(exprs(x1)-exprs(x2))
>>> [1] -0.05682931  0.03592777
>>> 
>>>> sessionInfo()
>>> R version 2.7.0 Under development (unstable) (2007-11-29 r43558)
>>> i686-pc-linux-gnu
>>> 
>>> locale:
>>> LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8
>>> ;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAM
>>> E=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION
>>> =C
>>> 
>>> attached base packages:
>>> [1] tools     stats     graphics  grDevices utils     datasets  methods
>>> [8] base
>>> 
>>> other attached packages:
>>>  [1] lumi_1.5.10            annotate_1.15.6        AnnotationDbi_1.1.6
>>>  [4] RSQLite_0.6-0          DBI_0.2-3              mgcv_1.3-29
>>>  [7] affy_1.15.7            preprocessCore_0.99.12 affyio_1.5.7
>>> [10] Biobase_1.17.6
>>> 
>>> Cheers,
>>> Ligia
>> 
>> 
>> --
>> 
>> Best wishes
>>    Wolfgang
>> 
>> ------------------------------------------------------------------
>> Wolfgang Huber  EBI/EMBL  Cambridge UK  http://www.ebi.ac.uk/huber
>> 
> 
> 


---------------------------------------------------
Pan Du, PhD
Research Assistant Professor
Robert H. Lurie Comprehensive Cancer Center
Northwestern University
676 ST Clair St., #1200
Chicago, IL 60611
Office (312)695-4781
dupan at northwestern.edu



More information about the Bioconductor mailing list