[BioC] Problem with limma's topTable lfc filter when more than 1 contrast is in output
Alex Gutteridge
alexg at ruggedtextile.com
Fri Jan 20 12:19:03 CET 2012
On 20.01.2012 05:11, Vladimir Zhurov wrote:
>> ...
>
> Dear Bioconductors,
>
> I am having the following problem which can be due to a
> misunderstanding,
> or an actual problem with topTable function in limma package.
>
> As far as I understand lfc and p filters should work together in
> filtering
> topTable results. Am I correct in this regard?
>
> If it is an intended situation then the problem is the following:
> when more
> than one contrasts is reported lfc filter does not affect the output.
> Which
> is shown in the sample R session below.
>
> I would appreciate you help.
>
> Regards.
>
> Vladimir.
>
Hi Vladimir,
I think the issue maybe that it is not clear (to me anyway!) what
result one would expect with a lfc filter on a table with multiple
contrasts. Should rows where all contrasts are above the cutoff be
reported? Or where any are? It doesn't seem to be explicit in the docs,
but my assumption is that to avoid confusion topTable ignores lfc= in
the case you describe.
Perhaps decideTests() is what you are really looking for? You can then
index a topTable generated data.frame with the results of decideTests.
E.g (pseudo-code not tested!)
tt = topTable(fit,p.value=1,number=Inf,sort.by="none")
dt = decideTests(fit,p.value=0.05,lfc=1)
tt[dt[,1] != 0 & dt[,2] != 0 & dt[,3] !=0,] #Gives rows where all
contrasts pass filter (assuming 3 contrasts)
tt[dt[,1] != 0 | dt[,2] != 0 | dt[,3] !=0,] #Gives rows where any
contrast passes filter
--
Alex Gutteridge
More information about the Bioconductor
mailing list