Hi Vinoy,

Yes, you can add columns to a MArrayLM object (output of lmFit). The best 
place would probably be in the fit.eb$genes data.frame. If the separate 
file of annotation has the same number of genes as fit.eb, make sure they 
are in the same order and then it's as simple as:

fit.eb$genes <- cbind(fit.eb$genes, annotation$Riley)

If the annotation file doesn't have all the same genes, then you would need 
to use merge() instead of cbind(). See ?merge for all the arguments and how 
to use it appropriately. And don't forget to double check at the end to 
make sure it worked as expected! BTW - I'm almost positive that you could 
add the annotation information to the original RGList object, and it would 
get propagated through everything to the MArrayLM object.

Good luck,
Jenny

At 05:45 AM 1/7/2007, you wrote:
>Hi Jenny,
>
>Thanks for the information. I didnt get any warning message in lmFit.
>
>I have another problem, hope u can solve it. I have already raised this 
>question in bioconductor user list.
>
>I need to append an annotation column to the fitted model, fit.eb
>
>("coefficients"     "stdev.unscaled"   "sigma"  "df.residual"  "ndups" 
>"spacing"   "block"  "correlation"     "cov.coefficients" 
>"pivot"            "method"           "design"  "genes"     "Amean"   " 
>df.prior"   "s2.prior"     "var.prior"  "proportion"   "s2.post"    "t" 
>"p.value"     "lods"      "F"    "F.p.value"),
>
>i have the annotation in a separate file with two columns (Gene ID, 
>Riley). Is there any way to add the riley column to the fit.eb data frame.
>
>Thanks in advance
>
>with regards,
>vinoy
>
>
>On 1/5/07, Vinoy Kumar Ramachandran 
><<mailto:vinoydna@gmail.com>vinoydna@gmail.com > wrote:
>Dear Jenny,
>
>When i used  your code for treating the duplicates (spots are spotted more 
>than twice), it works fine and the results are as expected, but it gives 
>warning messages.
>
>i have pasted the code below...
>
> > MA.q <- normalizeBetweenArrays(MA.l, method="quantile")
> > boxplot(MA.q$M~col(MA.q$M), names=colnames(MA.q$M))
> > MA.q <- MA.q[order(MA.q$genes$ID),]
> > x <- unique(MA.q$genes$ID )
> > MA.q$genes$spotrep <- NULL
> > for (i in 1:length(x)) {
>+     y <- which( MA.q$genes$ID == x[i] )
>+     MA.q$genes$spotrep[y] <- 1:length(y)
>+     }
> > MA.s <- MA.q[MA.q$genes$spotrep <= 2 , ]
> > design <- c(1,1,-1,1,1)
> > corfit <- duplicateCorrelation(MA.s, design, ndups=2, spacing=1)
>Warning messages:
>1: Too much damping - convergence tolerance not achievable in: glmgam.fit 
>(dx, dy, start = start, tol = tol, maxit = maxit, trace = trace)
>2: Too much damping - convergence tolerance not achievable in: 
>glmgam.fit(dx, dy, start = start, tol = tol, maxit = maxit, trace = trace)
>3: Too much damping - convergence tolerance not achievable in: 
>glmgam.fit(dx, dy, start = start, tol = tol, maxit = maxit, trace = trace)
>4: Too much damping - convergence tolerance not achievable in: 
>glmgam.fit(dx, dy, start = start, tol = tol, maxit = maxit, trace = trace)
> > corfit$consensus
>[1] 0.5030145
> > fit <- lmFit(MA.s, design, ndups=2, spacing=1,correlation=corfit$cor)
> > fit.eb <- eBayes(fit)
> > write.fit(fit.eb, file="data/1d.xls", adjust="BH")
>
>I dont understand the message, is it ok....to carry on the analysis or do 
>I have alter the code. can you please kindly explain this?
>
>Thanks for the help
>
>with regards,
>vinoy
>
>
>
>--
>Vinoy......
>
>
>
>
>--
>Vinoy......

Jenny Drnevich, Ph.D.

Functional Genomics Bioinformatics Specialist
W.M. Keck Center for Comparative and Functional Genomics
Roy J. Carver Biotechnology Center
University of Illinois, Urbana-Champaign

330 ERML
1201 W. Gregory Dr.
Urbana, IL 61801
USA

ph: 217-244-7355
fax: 217-265-5066
e-mail: drnevich@uiuc.edu 
	[[alternative HTML version deleted]]

