Entering edit mode
>Date: Thu, 1 Dec 2005 18:44:24 +0100
>From: "Dr. D. P. Kreil" <dpkreil at="" gmail.com="">
>Subject: [BioC] limma: semi-bug (?) report for toptable
>To: bioconductor at stat.math.ethz.ch
>
>Dear limma-maintainer,
>
>Firstly, thank you for providing limma, it has helped our work a lot.
>
>Now, I am not sure whether this is the right address for this
observation.
>I noticed that when calculating only one contrast, e.g.,
>
>design2<-model.matrix(~ -1 + tgt);
>cont.matrix<-makeContrasts(PvsC=tgtpedicel-tgtcapitellum,
levels=design2);
>fit2<-lmFit(eset,design2);
>cfit2<-contrasts.fit(fit2,cont.matrix);
>cfit2.eb<-eBayes(cfit2);
>
>that this single contrast cannot be named in topTable:
>
>topTable(cfit2.eb,coef=1); # works
>topTable(cfit2.eb,coef="PvsC"); # **broken**
>
>giving
>
>Error in toptable(fit = fit[c("coefficients", "stdev.unscaled")],
coef =
>coef, :
> subscript out of bounds
>
>when a second contrast is added to cont.matrix, the problem
disappears.
>
>I suspect that this is caused by a one-column matrix being implicitly
>converted to a vector by R somewhere in toptable.
>
>While it is easy to work around the problem and one will probably
only
>encounter it in rare situations, stumbling over it can confuse amd so
I
>wanted to point out the issue.
>
>Yours sincerely,
>
>David.
>(Boku University, Vienna)
Dear David,
It is an issue which is caused, as you suspect, by a one-column matrix
being converted to a vector by matrix multiplication. Thanks for
pointing
it out.
Best wishes
Gordon