##copyright 2002 R. Gentleman, all rights reserved
##helper functions for dealing with data environments (soon to be hash
##tables)
## JZ added lookUp and modified the other functions so that they all
## use lookUp. Nov. 6, 2003.
lookUp <- function(x, data, what, load=FALSE) {
if(length(x) < 1){
stop("No keys provided")
}
mget(x, envir=getAnnMap(what, chip=data, load=load),
ifnotfound=NA)
}
getGO <- function(x, data) {
lookUp(x, data, "GO")
}
getGOdesc <- function(x, which = c("BP", "CC", "MF", "ANY")) {
which <- match.arg(which)
options(show.error.messages = FALSE)
ans <- try(lookUp(x, "GO", "TERM", load=TRUE))
options(show.error.messages = TRUE)
onts <- sapply(ans, Ontology)
if(inherits(ans, "try-error")){
warning(paste("Invalid GO term", x))
return(NULL)
}else{
if(which == "ANY"){
return(ans)
}else{
ans <- ans[onts %in% which]
if(length(ans) == 0){
return(NULL)
}else{
return(ans)
}
}
}
}
getSYMBOL <- function(x, data) {
unlist(lookUp(x, data, "SYMBOL"))
}
getPMID <- function(x, data) {
lookUp(x, data, "PMID")
}
getEG <- function(x, data) {
unlist(lookUp(x, data, "ENTREZID"))
}
# This function needs to be updated when new annotation items are
# added to the data packages
getUniqAnnItem <- function(){
return(c("ACCNUM", "ENTREZID", "GENENAME", "SYMBOL", "MAP",
"GRIF", "SUMFUNC", "NM", "NP"))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.