[BioC] plotMA
Gordon Smyth
smyth at wehi.EDU.AU
Thu May 10 01:28:42 CEST 2007
Dear Lev,
You've broken the code by sort of over-programming with
lmFit(log2(exp(exprs(temp))), design)
If you used the simpler
lmFit(temp, design)
it would all work.
The problem is that you're giving lmFit a matrix not an expression
object, hence lmFit doesn't know whether the data are log-ratios or
log-intensities, hence it can't compute the Amean values, hence it
can't make an MA-plot. There's been some discussion about this topic
on this list.
Best wishes
Gordon
PS. Please give sessionInfo() when you make a post. I'm guessing here
that you're not using the current Bioconductor release.
At 01:45 AM 10/05/2007, Lev Soinov wrote:
>Dear List,
>
>Could you shed some light on what this mistake might mean:
> > plotMA(fit2, array=1)
>Error in xy.coords(x, y, xlabel, ylabel, log) :
> 'x' and 'y' lengths differ
>In addition: Warning messages:
>1: is.na() applied to non-(list or vector) in: is.na(x)
>2: no non-missing arguments to min; returning Inf
>3: no non-missing arguments to max; returning -Inf
>
>My scripts are below.
>With kind regards,
>Lev.
>
>
>
> > signals[1:2,1:2]
> SIGNAL1 SIGNAL2
>1 761.96 825.94
>2 16059.83 15860.98
> > print (nrow (signals))
>[1] 11691
> > print (ncol (signals))
>[1] 20
> > temp<-vsn(signals)
>vsn: 11691 x 20 matrix (1 stratum). 100% done.
> >
> >
> > design <- model.matrix(~0
> +factor(c(1,1,1,1,2,1,2,2,2,2,3,3,3,3,4,4,4,4,4,3)))
> > colnames(design) <- c("group1", "group2", "group3", "group4")
> > contrast.matrix <- makeContrasts(group2-group1, group3-group1,
> group4-group1, group4-group2, group4-group3, group3-group2, levels=design)
> > fit <- lmFit(log2(exp(exprs(temp))), design)
> > fit2 <- contrasts.fit(fit, contrast.matrix)
> > fit2 <- eBayes(fit2)
More information about the Bioconductor
mailing list