DESeq: multi-factors testing questions
1
0
Entering edit mode
Guest User ★ 13k
@guest-user-4897
Last seen 11.1 years ago
Dear Community, I have some questions about how the DESeq r package works for multi- factors expersiment. My experiment has three factors: A/B/C, and 8 replicates per condition. I would like the test the significance of the main effects of factor A, B and C, the significance of the two-way interaction terms: A:B, A:C and B:C, and the significance of the three-way interaction term: A:B:C. I want the table of pvalue for each term (main effects, two-way interaction terms and the three-way interaction term) like what ANOVA does for each gene. I know to test the significance of the three-way interaction term, we use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C+B:C+A:B:C) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C+B:C) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) My Questions are: how can I test the significance of main effects and the two-way interaction terms? 1. To test the main effect of A, B and C (i) To test the main effect of A: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~1) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) (ii) To test the main effect of B: Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~B) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~1) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) OR: Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B) itDeSeq0<-fitNbinomGLMs(cdsFull,count~B) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) Which one is correct? (iii) To test the main effect of C: Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~C) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~1) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) OR: Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C) itDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) which one is correct? 2. To test the two-way interaction terms: A:B, A:C and B:C (i) To test the two-way interaction term: A:B Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) Is it correct? (ii) To test the two-way interaction term: A:C Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) OR: Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:C) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) Which one is correct? (iii) To test the two-way interaction term: B:C Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C+B:C) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) OR: Do I need to use the following coding: fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+B:C) fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C) modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) Which one is correct? Thank you! -- output of sessionInfo(): sessionInfo() R version 3.0.1 (2013-05-16) Platform: x86_64-w64-mingw32/x64 (64-bit) 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] parallel stats graphics grDevices utils datasets methods base other attached packages: [1] DESeq_1.12.1 lattice_0.20-15 locfit_1.5-9.1 Biobase_2.20.1 BiocGenerics_0.6.0 edgeR_3.2.4 [7] limma_3.16.8 loaded via a namespace (and not attached): [1] annotate_1.38.0 AnnotationDbi_1.22.6 DBI_0.2-7 genefilter_1.42.0 geneplotter_1.38.0 [6] grid_3.0.1 IRanges_1.18.4 MASS_7.3-26 RColorBrewer_1.0-5 RSQLite_0.11.4 [11] splines_3.0.1 stats4_3.0.1 survival_2.37-4 tools_3.0.1 XML_3.98-1.1 [16] xtable_1.7-1 -- Sent via the guest posting facility at bioconductor.org.
DESeq DESeq • 1.1k views
ADD COMMENT
0
Entering edit mode
@mikelove
Last seen 16 hours ago
United States
hi Yanzhu, Firstly, we recommend in general moving to DESeq2, where we spend most of our development effort and which will be supported going foward. The DESeq2 workflow is very similar to DESeq and is described in detail in the vignette. The constructor function from a count matrix and column data is DESeqDataSetFromMatrix(), see the manual page for the required arguments. For likelihood ratio tests, you can use the following code: dds <- DESeqDataSetFromMatrix(counts, columndata, design = ~ A) dds <- DESeq(dds, test="LRT", reduced = ~ 1) res <- results(dds) res In order to give more detailed recommendations though, can you please tell us more about the experimental setup and what questions you are trying to answer? For instance, how are the samples distributed across groups A, B and C? I would suppose they are not 8 replicates per group, as this would not allow you to estimate any interaction terms. Mike On Mon, Jan 13, 2014 at 2:15 PM, Yanzhu [guest] <guest@bioconductor.org>wrote: > > Dear Community, > > I have some questions about how the DESeq r package works for > multi-factors expersiment. My experiment has three factors: A/B/C, and 8 > replicates per condition. I would like the test the significance of the > main effects of factor A, B and C, the significance of the two-way > interaction terms: A:B, A:C and B:C, and the significance of the three-way > interaction term: A:B:C. I want the table of pvalue for each term (main > effects, two-way interaction terms and the three-way interaction term) like > what ANOVA does for each gene. > > > I know to test the significance of the three-way interaction term, we use > the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C+B:C+A:B:C) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C+B:C) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > My Questions are: how can I test the significance of main effects and the > two-way interaction terms? > > 1. To test the main effect of A, B and C > > (i) To test the main effect of A: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~1) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > (ii) To test the main effect of B: > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~B) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~1) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > OR: > > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B) > itDeSeq0<-fitNbinomGLMs(cdsFull,count~B) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > Which one is correct? > > (iii) To test the main effect of C: > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~C) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~1) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > OR: > > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C) > itDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > which one is correct? > > 2. To test the two-way interaction terms: A:B, A:C and B:C > > (i) To test the two-way interaction term: A:B > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > Is it correct? > > (ii) To test the two-way interaction term: A:C > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > OR: > > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:C) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > Which one is correct? > > (iii) To test the two-way interaction term: B:C > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C+B:C) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C+A:B+A:C) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > OR: > > Do I need to use the following coding: > fitDeSeq1<-fitNbinomGLMs(cdsFull,count~A+B+C+B:C) > fitDeSeq0<-fitNbinomGLMs(cdsFull,count~A+B+C) > modDeSeq<-nbinomGLMTest(fitDeSeq1,fitDeSeq0) > > Which one is correct? > > Thank you! > > > > > > > -- output of sessionInfo(): > > sessionInfo() > R version 3.0.1 (2013-05-16) > Platform: x86_64-w64-mingw32/x64 (64-bit) > > 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] parallel stats graphics grDevices utils datasets methods > base > > other attached packages: > [1] DESeq_1.12.1 lattice_0.20-15 locfit_1.5-9.1 > Biobase_2.20.1 BiocGenerics_0.6.0 edgeR_3.2.4 > [7] limma_3.16.8 > > loaded via a namespace (and not attached): > [1] annotate_1.38.0 AnnotationDbi_1.22.6 DBI_0.2-7 > genefilter_1.42.0 geneplotter_1.38.0 > [6] grid_3.0.1 IRanges_1.18.4 MASS_7.3-26 > RColorBrewer_1.0-5 RSQLite_0.11.4 > [11] splines_3.0.1 stats4_3.0.1 survival_2.37-4 > tools_3.0.1 XML_3.98-1.1 > [16] xtable_1.7-1 > > -- > Sent via the guest posting facility at bioconductor.org. > > _______________________________________________ > Bioconductor mailing list > Bioconductor@r-project.org > https://stat.ethz.ch/mailman/listinfo/bioconductor > Search the archives: > http://news.gmane.org/gmane.science.biology.informatics.conductor > [[alternative HTML version deleted]]
ADD COMMENT

Login before adding your answer.

Traffic: 793 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