[BioC] limma single-channel analysis and intraspotCorrelation

Gordon Smyth smyth at wehi.edu.au
Thu Nov 4 02:55:13 CET 2004


>Wed Nov 3 17:30:23 CET 2004
>Hi,
>I have a data set of four slides (two pairs of dye swap),
>slide#    cy3   cy5
>slide1    wo    wr
>slide2    wr    wo
>slide3    mo    mr
>slide4    mr    mo
>
>wo: wildtype without treatment
>wr: wildtype with treatment
>mo: mutant without treatment
>mr: mutant with treatment
>
>I have been thinking if it is possible to get lists of differentially 
>expressed genes between wr and wo, genes between mr and mo, genes between 
>mr and wr, genes between mo and wo, and genes responding to treatment 
>differently in mutant compared to wild-type. I know factorial design is 
>the better way to go. But based on the data I have now, can I use single 
>channel analysis to get comparison of interest? What I tried and what I 
>will do are like the following,

In principle you can, but I think your dataset is too small for what you're 
trying to achieve. You're trying to estimate 5 linear model coefficients 
and (implicitly) 2 variance parameters, making a total 7 parameters per 
gene with only 8 single-channel observations, some of which may be missing.

If you remove the dye effect from your model and subset MA so that it 
contains only those genes which are non-missing and not negative controls, 
then the fit will probably work.

Gordon

>library(limma)
>targets2 <- readTargets("Targets2.txt")
>RG<-read.maimages(targets2$FileName, source="spot",wt.fun=wtarea(100))
>RG$genes<- readGAL("Mouse24052004_635final2.txt")
>RG$printer<-getLayout(RG$genes)
>spottypes<-readSpotTypes("spottypes2.txt")
>RG$genes$Status<- controlStatus(spottypes, RG$genes)
># assign weight 0 to missing spots
>w<-modifyWeights(RG$weights,status=RG$genes$Status, "miss",0)
>RG$weights<-w
>RG<-backgroundCorrect(RG,method="minimum")
>MA<-normalizeWithinArrays(RG)
>MA<-normalizeBetweenArrays(MA, method="quantile")
>targets2.sc <- targetsA2C(targets2)
>design.sc<-model.matrix(~0+factor(targets2.sc$Target)+factor(targets2.sc$channel))
>colnames(design.sc)<-c("mo","mr","wo","wr","ch")
>corfit<-intraspotCorrelation(MA,design.sc)
>
># got error from intraspotCorrelation()



More information about the Bioconductor mailing list