[BioC] extract genes from vennDiagram LIMMA ..How?,

Gordon Smyth smyth at wehi.edu.au
Thu Mar 24 00:00:01 CET 2005


>Wed Mar 23 19:48:20 CET 2005
>Hi BioC,
>
>For 3 experimental groups in LIMMA, when vennDiagram
>is generated based on :
>
>mask <- c(1,1,1,2,2,3,3,3);
>design <- model.matrix(~ -1+factor(mask));
>colnames(design) <- c("Group1","Group2","Group3");
>ConX<-as.matrix(c("Group1-Group2","Group1-Group3","Group2-Group3"));
>fit2 <- contrasts.fit(fit,contrast.matrix);
>fit2 <- eBayes(fit2);
>ConRow <- nrow(ConX);
>
>#now I am extracting all DE genes from each contrast
>and collect it in array, so, later I can draw heatmap
>but I have lots of probesets co in that array
>for(i in 1:ConRow)
>            {
>             DEtable <- topTable(fit2,coef = i,number =
>numberDE,adjust = "fdr",sort.by = "P");
>             DEList[i] <- list(DEtable);
>             AllDEGenes <-
>c(AllDEGenes,as.character(DEList[[i]][,"ID"]));
>             AllDE_FDR <-
>c(AllDE_FDR,as.character(DEList[[i]][,"P.Value"]));
>            }
>
>For 3 experimental groups, how can someone extract
>differentially expressed genes which is common in all
>three groups?

What you do mean by "common in all three groups"? Do you possibly mean, 
significant for all three contrasts? That would imply looking for genes 
which have different expression values in all three groups, which is sort 
of the opposite of what you have said.

Here is a way to find genes which are significant for all the contrasts 
specified. This may or may not be what you were looking for:

fit2 <- contrasts.fit(fit,contrast.matrix)
fit2 <- eBayes(fit2)
results <- decideTests(fit2,adjust="fdr",p.value=0.05)
i <- apply(results,1,all)

Now the vector 'i' is TRUE for all genes which are simultaneously 
significant for all contrasts. You can now do anything you want with the 
selected genes, e.g., look the gene IDs:

fit$genes[i,]

>Is it possible to generate vennDiagram() for more than
>3 groups..in LIMMA?

There is no such thing as a Venn diagram for more than 3 groups, in limma 
or anywhere else. It is simply not geometrically possible.

Gordon

>Thank you in advance,
>Saurin



More information about the Bioconductor mailing list