RDAVIDWebService

logo

RDAVIDWebService is a versatile R interface to connect DAVID using web service API. At present an article is under revision at Bioinformatics and the respective package at Bioconductor. Earliest release of the package can be found here:

Please refer to DAVID website for more information on the web service or its article.

Visual comparison example of how actions in DAVID can be performed inside R.

RDAVIDWebService

1) Open R and load the library

>library(“RDAVIDWebService”)
>david<-
DAVIDWebService$new(email=”user@inst.org”)

2) Select the type of ids

>getIdTypes(david)
[1] “AFFYMETRIX_3PRIME_IVT_ID”
[2] “AFFYMETRIX_EXON_GENE_ID”
[3] “AFFYMETRIX_SNP_ID” “AGILENT_CHIP_ID”
[5] “AGILENT_ID” “AGILENT_OLIGO_ID”
[7] “ENSEMBL_GENE_ID” “ENSEMBL_TRANSCRIPT_ID”
[9] “ENTREZ_GENE_ID” “FLYBASE_GENE_ID”
[11] “FLYBASE_TRANSCRIPT_ID” “GENBANK_ACCESSION”
[13] “GENOMIC_GI_ACCESSION” “GENPEPT_ACCESSION”
[15] “ILLUMINA_ID” “IPI_ID” “MGI_ID” “PFAM_ID”
[19] “PIR_ID” “PROTEIN_GI_ACCESSION”
[21] “REFSEQ_GENOMIC” “REFSEQ_MRNA”
[23] “REFSEQ_PROTEIN” “REFSEQ_RNA”
[25] “RGD_ID” “SGD_ID” “TAIR_ID” “UCSC_GENE_ID”
[29] “UNIGENE” “UNIPROT_ACCESSION”
[31] “UNIPROT_ID” “UNIREF100_ID”
[33] “WORMBASE_GENE_ID” “WORMPEP_ID” “ZFIN_ID”

 

 3) Update demoList1 as “Gene List”

>data(demoList1)
>result<-addList(david, demoList1,
+ idType=”AFFYMETRIX_3PRIME_IVT_ID”, 
+ listName=”demoList1″, listType=”Gene”)
>result
$inDavid
[1] 0.9695122
$unmappedIds
[1] “34902_at” “1937_at” “35996_at” “32163_f_at”
[5] “32407_f_at”

 4) Explore the uploaded “Gene List”

>david
DAVIDWebService object to access DAVID’s website.
User email: user@inst.org 
Available Gene List/s:
  Name              Using
1 demoList1         *
Available Specie/s:
  Name              Using
1 Homo sapiens(155) *
Available Background List/s: 
  Name              Using
1 Homo sapiens      *

  

  5) Select a custom annotation categories for the present analysis, for instance GOTERM_BP_ALL

 >setAnnotationCategories(david, “GOTERM_BP_ALL”)

 

 

 

 

6) Obtain the Functional Annotation Cluster and inspect a given cluster.

 >termCluster<-getClusterReport(david,
+ type=”Term”)
>head(summary(termCluster))
  Cluster Enrichment Members
1 1       2.9042961  14
2 2       1.9768081  14
3 3       1.3473934  4
4 4       1.3095547  8
5 5       1.2982877  6
6 6       0.8279339  4
>clusterNumber<-3
>members(termCluster)[[3]][,2:5]
  Term
1 GO:0008015~blood circulation
2 GO:0003013~circulatory system process
3 GO:0008217~regulation of blood pressure
4 GO:0003008~system process
  Count X.       PValue
1 7     4.516129 0.009573539
2 7     4.516129 0.009573539
3 4     2.580645 0.073404934
4 15    9.677419 0.606116694

 

 

7) Obtain the 2Dview of the third cluster.

>plot2D(termCluster, clusterNumber) 

2Dview 

 

8) Obtain the associated Gene Ontology Direct Acyclic Graph (new feature). 

>davidGODag<-DAVIDGODag(
+ members(termCluster)[[clusterNumber]],
+ “BP”, pvalueCutoff=0.1)
>plotGOTermGraph(g=goDag(davidGODag),
+ r=davidGODag, max.nchar=30,
+ node.shape=”ellipse”)

 GODag

 

 

 

DAVID website

1) Go to DAVID website.

 

 

 2) Select the type of ids

DAVID id types

 

 

 

 

 

 

 

 

 

 

 

 

 

3) Update demoList1 simply click on Demolist_1 link. The appropiate “Gene List” type and “id” type will be selected for you.

demolist1

 

 4) Explore the uploaded “Gene List”

uploadedlist 

 5) Select a custom annotation categories for the present analysis, for instance GOTERM_BP_ALL

annotation 

 6) Obtain the Functional Annotation Cluster, using the following custom options:

Overlap=4, Threshold=0.35,  Initial Group=4, Final Group=4, Linkage=0.5
and inspect a given cluster.

FunCustering0

 

 7) Obtain the 2Dview of the third cluster.

2DViewer2

Additional features are describe in the package man pages and RDavidWS-vignette.