Nothing
#' @importClassesFrom limma MAList
#' @export
"GDS2MA" <-
function(GDS,do.log2=FALSE,GPL=NULL,AnnotGPL=TRUE,getGPL=TRUE) {
if(!is.null(GPL) & getGPL) {
GPL <- getGEO(Meta(GDS)$platform,AnnotGPL=AnnotGPL)
ord.table <- match(Table(GDS)[,1],Table(GPL)[,1])
# exclude non-numeric columns
}
inc.columns <- grep('GSM',colnames(Table(GDS)))
mat <- suppressWarnings(as.matrix(apply(Table(GDS)[,inc.columns],2,function(x) {as.numeric(as.character(x))})))
if(do.log2) {
M <- log2(mat)
} else {
M <- mat
}
if(is.null(GPL)) {
## No GPL requested
return(new('MAList',list(M=M,
A=NULL,
targets=Columns(GDS),
notes=Meta(GDS)
)))
} else {
## include GPL
return(new('MAList',list(M=M,
A=NULL,
targets=Columns(GDS),
genes=Table(GPL)[ord.table,],
notes=Meta(GDS)
)))}
return(MA)
}
#' @importClassesFrom Biobase ExpressionSet
#' @export
"GDS2eSet" <-
function(GDS,do.log2=FALSE,GPL=NULL,AnnotGPL=TRUE,getGPL=TRUE) {
# exclude non-numeric columns
inc.columns <- grep('GSM',colnames(Table(GDS)))
mat <- suppressWarnings(as.matrix(apply(Table(GDS)[,inc.columns],2,
function(x) {as.numeric(as.character(x))})))
if(do.log2) {
expr <- log2(mat)
} else {
expr <- mat
}
rownames(expr) <- as.character(Table(GDS)$ID_REF)
tmp <- Columns(GDS)
rownames(tmp) <- as.character(tmp$sample)
pheno <- new("AnnotatedDataFrame",data=tmp)
mabstract=ifelse(is.null(Meta(GDS)$description),"",Meta(GDS)$description)
mpubmedids=ifelse(is.null(Meta(GDS)$pubmed_id),"",Meta(GDS)$pubmed_id)
mtitle=ifelse(is.null(Meta(GDS)$title),"",Meta(GDS)$title)
featuredata = new("AnnotatedDataFrame",data=data.frame(row.names=rownames(expr)))
if(getGPL | !is.null(GPL)) {
if(is.null(GPL)) {
GPL <- getGEO(Meta(GDS)$platform,AnnotGPL=AnnotGPL)
}
ord.table <- match(Table(GDS)[,1],Table(GPL)[,1])
dt <- Table(GPL)
rownames(dt) <- as.character(dt$ID)
vardt = data.frame(Column=Columns(GPL)[,1],
labelDescription=Columns(GPL)[,2])
## GEO started using the same column names for
## both GO IDs and textual descriptions, so
## had to be made unique.
vardt[,1] <- make.unique(as.character(vardt[,1]))
rownames(vardt) = vardt[,1]
colnames(dt) <- rownames(vardt)
featuredata <- new('AnnotatedDataFrame',data=dt[ord.table,],
varMetadata=vardt)
}
eset <- new('ExpressionSet',exprs=expr,phenoData=pheno,
featureData=featuredata,
experimentData=new("MIAME",
abstract=mabstract,
title=mtitle,
pubMedIds=mpubmedids,
other=Meta(GDS)))
return(eset)
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.