LIMMA:design and contrast matrices for biological and technical replicates
1
0
Entering edit mode
Mike White ▴ 30
@mike-white-1682
Last seen 10.2 years ago
An embedded and charset-unspecified text was scrubbed... Name: not available Url: https://stat.ethz.ch/pipermail/bioconductor/attachments/20060412/ 0e70b662/attachment.pl
• 572 views
ADD COMMENT
0
Entering edit mode
@adaikalavan-ramasamy-675
Last seen 10.2 years ago
Your "nic" variable is confounded with "contr" variable, therefore not estimable. Can you clarify the following please : 1. Do you expect File1 and File2 to be biologically identical ? 2. Do you expect contr1, contr2, contr3 to be identical (i.e. your used a universal RNA pool for all six arrays) ? If the answer is yes to both of the above, then you might need something along the lines of samples <- as.factor( c("nic1", "nic1", "nic2", "nic2", "nic3", "nic3")) design <- model.matrix( ~ -1 + samples ) samplesnic1 samplesnic2 samplesnic3 1 1 0 0 2 1 0 0 3 0 1 0 4 0 1 0 5 0 0 1 6 0 0 1 Regards, Adai On Wed, 2006-04-12 at 12:12 -0400, Mike White wrote: > Hello, > > I have started using limma to analyze data obtained from experiments > examining the effects of nicotine exposure on gene expression in > defined regions of the central nervous system. I am using R v2.2.1 > and limma v2.4.13 running under linux. The data are obtained using 2- > color microarrays using probes made from three different mice and > duplicate arrays for each set of probes, giving 6 arrays (3 > biological and two replicates): > > Cy3 Cy5 > File1 contr1 nic1 > File2 contr1 nic1 > File3 contr2 nic2 > File4 contr2 nic2 > File5 contr3 nic3 > File6 contr3 nic3 > > I have tried several different ways of setting up the design and > linear model to fit, including one similar to the one suggested by > Gordon in his posting of 28 Sept 05: > > design<-cbind(nic1vscontr1=c(1,1,0,0,0,0), nic2vscontr2=c > (0,0,1,1,0,0), nic3vscontr3=c(0,0,0,0,1,1)) > cont.matrix<- makeContrasts(nicvscontr= c(1,1,1)/3, levels=design) > > this does return results (of course, how meaningful they are > requires more work...). > > However, I also tried an alternate way of setting things up following > an example in section 23.5 ("Technical replication") in Gordon's > chapter in the Bioconductor book in which one of the controls is set > as a reference and everything is done in relation to this. That > particular example represented a more complex situation than the one > here, but I wanted to see how this compared to the other method and > assumed that it could be applied to my situation.: > > design<- modelMatrix(targets, ref= "contr1") > Found unique target names: > nic1 nic2 nic3 contr1 contr2 contr3 > colnames(design) > > [1] "nic1" "nic2" "nic3" "contr2" "contr3" > > > > the design matrix is as follows > > nic1 nic2 nic3 contr2 contr3 > File1 1 0 0 0 0 > FIle2 1 0 0 0 0 > File3 0 1 0 -1 0 > File4 0 1 0 -1 0 > File5 0 0 1 0 -1 > File6 0 0 1 0 -1 > > which is what I expected > > > however when I try to fit the data the following happens > > fit<- lmFit(MA,design) > Coefficients not estimable: contr2 contr3 > > I am a neophyte with both microarrays and limma, and am still feeling > my way around setting up design and contrast matrices. However, I > can't understand why the second method fails. Any insights? > > Thanks > > Mike White > > ---------------------------------------------------------- > Michael M. White, Ph.D. > Department of Pharmacology & Physiology > MS #488 > Drexel University College of Medicine > 245 N. 15th Street > Philadelphia, PA 19102-1192 > > phone: 215-762-2355 > fax: 215-762-4850 > > > > [[alternative HTML version deleted]] > > _______________________________________________ > Bioconductor mailing list > Bioconductor at stat.math.ethz.ch > https://stat.ethz.ch/mailman/listinfo/bioconductor > Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor >
ADD COMMENT
0
Entering edit mode
Adai, Thanks for the quick response. As I said in the original posting I am new to this area, and so some of my questions/concepts may be naive or incorrect. Given the nature of the experiment (mice are either treated with nicotine ("nic") or not ("contr")) and we want to examine genes up or down-regulated by nicotine exposure, I don't see how the "nic" would be confounded with "contr". Of course, I'm not a statistics maven, and I may have misunderstood what you were getting at. File1 and File2 should be biologicaly identical, as the probes were prepared from the same RNA preparations and should be technical replicates for those respective RNA preparations. File3 and File4 are technical replicates from RNA isolated from a different pair of animals, and File5 and File6 are technical replicates from yet another set of animals. contr1, contr2, and contr3 are biological replicates from three different control animals, and nic1, nic2, and nic3 are biological replicates from three different nicotine-teated animals. As they are biological replicates, I don't think that the three contr samples should be a priori identical, but should be (hopefully) very similar; the same should hold for the three nic samples. I think that the first method I tried in the posting (the one that worked) is sufficient for this type of experiment, but I wanted to try the other way, as it seemed more general and adaptable to more complex situations that may come up in the future. In other words, I'm trying to climb learning curve so that I can use the technology and analysis methods to its fullest. Mike On Apr 12, 2006, at 6:54 PM, Adaikalavan Ramasamy wrote: > Your "nic" variable is confounded with "contr" variable, therefore not > estimable. > > Can you clarify the following please : > 1. Do you expect File1 and File2 to be biologically identical ? > 2. Do you expect contr1, contr2, contr3 to be identical (i.e. your > used > a universal RNA pool for all six arrays) ? > > If the answer is yes to both of the above, then you might need > something > along the lines of > > samples <- as.factor( c("nic1", "nic1", "nic2", "nic2", "nic3", > "nic3")) > design <- model.matrix( ~ -1 + samples ) > > samplesnic1 samplesnic2 samplesnic3 > 1 1 0 0 > 2 1 0 0 > 3 0 1 0 > 4 0 1 0 > 5 0 0 1 > 6 0 0 1 > > Regards, Adai > > > On Wed, 2006-04-12 at 12:12 -0400, Mike White wrote: >> Hello, >> >> I have started using limma to analyze data obtained from experiments >> examining the effects of nicotine exposure on gene expression in >> defined regions of the central nervous system. I am using R v2.2.1 >> and limma v2.4.13 running under linux. The data are obtained using 2- >> color microarrays using probes made from three different mice and >> duplicate arrays for each set of probes, giving 6 arrays (3 >> biological and two replicates): >> >> Cy3 Cy5 >> File1 contr1 nic1 >> File2 contr1 nic1 >> File3 contr2 nic2 >> File4 contr2 nic2 >> File5 contr3 nic3 >> File6 contr3 nic3 >> >> I have tried several different ways of setting up the design and >> linear model to fit, including one similar to the one suggested by >> Gordon in his posting of 28 Sept 05: >> >> design<-cbind(nic1vscontr1=c(1,1,0,0,0,0), nic2vscontr2=c >> (0,0,1,1,0,0), nic3vscontr3=c(0,0,0,0,1,1)) >> cont.matrix<- makeContrasts(nicvscontr= c(1,1,1)/3, levels=design) >> >> this does return results (of course, how meaningful they are >> requires more work...). >> >> However, I also tried an alternate way of setting things up following >> an example in section 23.5 ("Technical replication") in Gordon's >> chapter in the Bioconductor book in which one of the controls is set >> as a reference and everything is done in relation to this. That >> particular example represented a more complex situation than the one >> here, but I wanted to see how this compared to the other method and >> assumed that it could be applied to my situation.: >> >> design<- modelMatrix(targets, ref= "contr1") >> Found unique target names: >> nic1 nic2 nic3 contr1 contr2 contr3 >> colnames(design) >> >> [1] "nic1" "nic2" "nic3" "contr2" "contr3" >> >> >> >> the design matrix is as follows >> >> nic1 nic2 nic3 contr2 contr3 >> File1 1 0 0 >> 0 0 >> FIle2 1 0 0 >> 0 0 >> File3 0 1 0 >> -1 0 >> File4 0 1 0 >> -1 0 >> File5 0 0 1 >> 0 -1 >> File6 0 0 1 >> 0 -1 >> >> which is what I expected >> >> >> however when I try to fit the data the following happens >> >> fit<- lmFit(MA,design) >> Coefficients not estimable: contr2 contr3 >> >> I am a neophyte with both microarrays and limma, and am still feeling >> my way around setting up design and contrast matrices. However, I >> can't understand why the second method fails. Any insights? >> >> Thanks >> >> Mike White >> >> ---------------------------------------------------------- >> Michael M. White, Ph.D. >> Department of Pharmacology & Physiology >> MS #488 >> Drexel University College of Medicine >> 245 N. 15th Street >> Philadelphia, PA 19102-1192 >> >> phone: 215-762-2355 >> fax: 215-762-4850 >> >> >> >> [[alternative HTML version deleted]] >> >> _______________________________________________ >> Bioconductor mailing list >> Bioconductor at stat.math.ethz.ch >> https://stat.ethz.ch/mailman/listinfo/bioconductor >> Search the archives: http://news.gmane.org/ >> gmane.science.biology.informatics.conductor >> >
ADD REPLY

Login before adding your answer.

Traffic: 1011 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6