[BioC] intraspotCorrelation vs duplicateCorrelation
Naomi Altman
naomi at stat.psu.edu
Sat Feb 26 05:12:23 CET 2011
Dear Gordon,
Thanks for the information. There are 50 warnings:
In remlscore(y, X, Z) : reml: Max iterations exceeded
Since 50 is the maximum number stored by R in my current
implementation, it does look like the model fit must have failed for
every single gene.
Thank you for your the explanation.
--Naomi
At 10:35 PM 2/25/2011, Gordon K Smyth wrote:
>Dear Naomi,
>
>duplicateCorrelation() calls mixedModel2Fit() (in the statmod
>package), which in turn calls glmgam.fit(). glmgam.fit() implements
>a Levenberg-Marquardt modification to the Fisher scoring algorithm
>to prevent divergence, so it is extremely reliable, much more so
>than a call to glm() would be. On the other hand,
>intraspotCorrelation() calls remlscore() (also in the statmod
>package), which does ordinary Fisher scoring for a related model
>without any modification to prevent divergence. So it is entirely
>possible that duplicateCorrelation() will work for a dataset for
>which intraspotCorrelation() does not.
>
>However, to get a NULL result from intraspotCorrelation(), the model
>fit would have to fail for every single gene in your dataset. Just
>failing for one or two would not cause a problem.
>
>Best wishes
>Gordon
>
>>Date: Thu, 24 Feb 2011 20:20:12 -0500
>>From: Naomi Altman <naomi at stat.psu.edu>
>>To: bioconductor at r-project.org
>>Subject: [BioC] intraspotCorrelation vs duplicateCorrelation
>>Message-ID: <6.2.3.4.1.20110224200727.01ffea98 at imap.stat.psu.edu>
>>Content-Type: text/plain; charset="us-ascii"; format=flowed
>>
>>I was having problems with intraspotCorrelation for a single channel
>>analysis, so I decided to reorganize the data to use
>>duplicateCorrelation. I thought I would get the same answer, but I
>>did not. I hope someone can tell me why. (As you will see below, I
>>like the answer with duplicateCorrelation better!)
>>
>>MAp is the normalized 2-channel data.
>>I have a targets list called targetp with the treatment
>>information. The code is below.
>>
>>##############################################################
>># separate channel approach
>>#############################################################
>>targetSingle <- targetsA2C(targetp)
>>rep=c(0,0,1,1,0,0,1,1,0,0,1,1)
>>designp=model.matrix(~-1+targetSingle$Target+rep,levels=unique(c(cy3,cy5)))
>>corfit =intraspotCorrelation(MAp, designp)
>>corfit$cor
>>NULL
>>##########################################################
>># the warning was
>>#In remlscore(y, X, Z) : reml: Max iterations exceeded
>>##########################################################
>>
>>############################################################
>># approach treating channels as separate arrays
>>############################################################
>>RGp=RG.MA(MAp)
>>Rp=log2(RGp$R)
>>Gp=log2(RGp$G)
>>exprP=cbind(Rp[,1],Gp[,1],Rp[,2],Gp[,2],Rp[,3],Gp[,3],Rp[,4],Gp[,4],Rp[,5],Gp[,5],Rp[,6],Gp[,6])
>>corfitP = duplicateCorrelation(exprP, designp, block =
>>factor(c(1,1,2,2,3,3,4,4,5,5,6,6)))
>>corfitP$cor
>>[1] 0.4921254
>>
>>sessionInfo()
>>R version 2.11.1 (2010-05-31)
>>i386-pc-mingw32
>>
>>locale:
>>[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United
>>States.1252 LC_MONETARY=English_United States.1252
>>[4] LC_NUMERIC=C LC_TIME=English_United
>>States.1252
>>
>>attached base packages:
>>[1] tools stats graphics grDevices
>>utils datasets methods base
>>
>>other attached packages:
>>[1] statmod_1.4.8 rat2302cdf_2.6.0
>>limma_3.4.5 affy_1.26.1 Biobase_2.8.0
>>
>>loaded via a namespace (and not attached):
>>[1] affyio_1.16.0 preprocessCore_1.10.0
>>
>>
>>Thanks,
>>Naomi
>
>______________________________________________________________________
>The information in this email is confidential and inten...{{dropped:7}}
More information about the Bioconductor
mailing list