Nothing
if(getRversion() >= "2.15.1") utils::globalVariables("sigOvcCrijns")
`ovcCrijns` <-
function(data, annot, hgs, gmap=c("entrezgene", "ensembl_gene_id", "hgnc_symbol", "unigene"), do.mapping=FALSE, verbose=FALSE) {
gmap <- match.arg(gmap)
if(missing(hgs)) { hgs <- rep(TRUE, nrow(data)) }
if(do.mapping) {
if(!is.element(gmap, colnames(annot))) { stop("gmap is not a column of annot!") }
if(verbose) { message("the most variant probe is selected for each gene") }
sigt <- sigOvcCrijns[order(abs(sigOvcCrijns[ ,"weight"]), decreasing=FALSE), ,drop=FALSE]
sigt <- sigt[!duplicated(sigt[ ,gmap]), ,drop=FALSE]
gid2 <- sigt[ ,gmap]
names(gid2) <- rownames(sigt)
gid1 <- annot[ ,gmap]
names(gid1) <- colnames(data)
rr <- geneid.map(geneid1=gid1, data1=data, geneid2=gid2)
data <- rr$data1
annot <- annot[colnames(data), ,drop=FALSE]
sigt <- sigt[names(rr$geneid2), ,drop=FALSE]
pold <- colnames(data)
pold2 <- rownames(sigt)
colnames(data) <- rownames(annot) <- rownames(sigt) <- paste("geneid", annot[ ,gmap], sep=".")
mymapping <- c("mapped"=nrow(sigt), "total"=nrow(sigOvcCrijns))
myprobe <- data.frame("probe"=pold, "gene.map"=annot[ ,gmap], "new.probe"=pold2)
} else {
gix <- intersect(rownames(sigOvcCrijns), colnames(data))
if(length(gix) < 2) { stop("data do not contain enough gene from the ovcTCGA signature!") }
data <- data[ ,gix,drop=FALSE]
annot <- annot[gix, ,drop=FALSE]
mymapping <- c("mapped"=length(gix), "total"=nrow(sigOvcCrijns))
myprobe <- data.frame("probe"=gix, "gene.map"=annot[ ,gmap], "new.probe"=gix)
sigt <- sigOvcCrijns[gix, ,drop=FALSE]
}
## transform the gene expression in Z-scores
data <- scale(data)
pscore <- genefu::sig.score(x=data.frame("probe"=colnames(data), "EntrezGene.ID"=annot[ ,gmap], "coefficient"=sigt[ ,"weight"]), data=data, annot=annot, do.mapping=FALSE, signed=FALSE)$score
prisk <- as.numeric(pscore > median(pscore, na.rm=TRUE))
names(prisk) <- names(pscore) <- rownames(data)
return (list("score"=pscore, "risk"=prisk, "mapping"=mymapping, "probe"=myprobe))
}
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.