###################################################
### chunk number 1: 
###################################################
#line 99 "vignettes/dualKS/inst/doc/dualKS.rnw"
options(width=70, scipen=999)


###################################################
### chunk number 2: 
###################################################
#line 103 "vignettes/dualKS/inst/doc/dualKS.rnw"
library("dualKS")
data("dks")
pData(eset)


###################################################
### chunk number 3: 
###################################################
#line 120 "vignettes/dualKS/inst/doc/dualKS.rnw"
	tr <- dksTrain(eset, class=1, type="up")


###################################################
### chunk number 4: 
###################################################
#line 133 "vignettes/dualKS/inst/doc/dualKS.rnw"
	cl <- dksSelectGenes(tr, n=100)


###################################################
### chunk number 5: 
###################################################
#line 142 "vignettes/dualKS/inst/doc/dualKS.rnw"
	pr <- dksClassify(eset, cl)
	summary(pr, actual=pData(eset)[,1])
	show(pr)


###################################################
### chunk number 6:  eval=FALSE
###################################################
## #line 168 "vignettes/dualKS/inst/doc/dualKS.rnw"
## plot(pr, actual=pData(eset)[,1])


###################################################
### chunk number 7: 
###################################################
#line 174 "vignettes/dualKS/inst/doc/dualKS.rnw"
plot(pr, actual=pData(eset)[,1])


###################################################
### chunk number 8: 
###################################################
#line 213 "vignettes/dualKS/inst/doc/dualKS.rnw"
	pr <- dksClassify(eset, cl, rescale=TRUE)
	summary(pr, actual=pData(eset)[,1])


###################################################
### chunk number 9:  eval=FALSE
###################################################
## #line 220 "vignettes/dualKS/inst/doc/dualKS.rnw"
## 	plot(pr, actual=pData(eset)[,1])


###################################################
### chunk number 10: 
###################################################
#line 226 "vignettes/dualKS/inst/doc/dualKS.rnw"
	plot(pr, actual=pData(eset)[,1])


###################################################
### chunk number 11:  eval=FALSE
###################################################
## #line 244 "vignettes/dualKS/inst/doc/dualKS.rnw"
## 
## sc <- KS(exprs(eset)[,1], cl@genes.up)
## plot(sc$runningSums[,1], type='l', ylab="KS sum", ylim=c(-1200,1200), col="red")
## par(new=TRUE)
## plot(sc$runningSums[,2], type='l', ylab="KS sum", ylim=c(-1200,1200), col="green")
## par(new=TRUE)
## plot(sc$runningSums[,3], type='l', ylab="KS sum", ylim=c(-1200,1200), col="blue")
## legend("topright", col=c("red", "green", "blue"), lwd=2, legend=colnames(sc$runningSums))


###################################################
### chunk number 12: 
###################################################
#line 261 "vignettes/dualKS/inst/doc/dualKS.rnw"
sc <- KS(exprs(eset)[,1], cl@genes.up)
plot(sc$runningSums[,1], type='l', ylab="KS sum", ylim=c(-1200,1200), col="red")
par(new=TRUE)
plot(sc$runningSums[,2], type='l', ylab="KS sum", ylim=c(-1200,1200), col="green")
par(new=TRUE)
plot(sc$runningSums[,3], type='l', ylab="KS sum", ylim=c(-1200,1200), col="blue")
legend("topright", col=c("red", "green", "blue"), lwd=2, legend=colnames(sc$runningSums))


###################################################
### chunk number 13:  eval=FALSE
###################################################
## #line 311 "vignettes/dualKS/inst/doc/dualKS.rnw"
## tr <- dksTrain(exprs(eset), class=pData(eset)[,1], type="up", weights=TRUE)
## cl <- dksSelectGenes(tr, n=100)
## pr <- dksClassify(exprs(eset), cl)
## plot(pr, actual=pData(eset)[,1])


###################################################
### chunk number 14: 
###################################################
#line 324 "vignettes/dualKS/inst/doc/dualKS.rnw"
tr <- dksTrain(exprs(eset), class=pData(eset)[,1], type="up", weights=TRUE)
cl <- dksSelectGenes(tr, n=100)
pr <- dksClassify(exprs(eset), cl)
plot(pr, actual=pData(eset)[,1])


###################################################
### chunk number 15:  eval=FALSE
###################################################
## #line 349 "vignettes/dualKS/inst/doc/dualKS.rnw"
## wt <- dksWeights(eset, class=1)


###################################################
### chunk number 16:  eval=FALSE
###################################################
## #line 356 "vignettes/dualKS/inst/doc/dualKS.rnw"
## tr <- dksTrain(exprs(eset), class=1, weights=wt)


###################################################
### chunk number 17:  eval=FALSE
###################################################
## #line 393 "vignettes/dualKS/inst/doc/dualKS.rnw"
## 
## ix.n <- which(pData(eset)[,1] == "normal")
## data <- exprs(eset)
## data.m <- apply(data[,ix.n], 1, mean, na.rm=TRUE)
## 


###################################################
### chunk number 18:  eval=FALSE
###################################################
## #line 404 "vignettes/dualKS/inst/doc/dualKS.rnw"
## data <- data[,-ix.n]
## data.r <- sweep(data, 1, data.m, "/")


###################################################
### chunk number 19:  eval=FALSE
###################################################
## #line 412 "vignettes/dualKS/inst/doc/dualKS.rnw"
## data.r <- log(data.r, 2)
## tr <- dksTrain(data.r, class=pData(eset)[-ix.n,1], type="both")
## cl <- dksSelectGenes(tr, n=100)
## pr <- dksClassify(data.r, cl)
## plot(pr, actual=pData(eset)[-ix.n,1])


###################################################
### chunk number 20: 
###################################################
#line 422 "vignettes/dualKS/inst/doc/dualKS.rnw"
ix.n <- which(pData(eset)[,1] == "normal")
data <- exprs(eset)
data.m <- apply(data[,ix.n], 1, mean, na.rm=TRUE)
data <- data[,-ix.n]
data.r <- sweep(data, 1, data.m, "/")
data.r <- log(data.r, 2)

tr <- dksTrain(data.r, class=pData(eset)[-ix.n,1], type="both")
cl <- dksSelectGenes(tr, n=100)
pr <- dksClassify(data.r, cl)
plot(pr, actual=pData(eset)[-ix.n,1])


###################################################
### chunk number 21: 
###################################################
#line 441 "vignettes/dualKS/inst/doc/dualKS.rnw"
summary(pr, actual=pData(eset)[-ix.n,1])
show(pr)


###################################################
### chunk number 22: 
###################################################
#line 469 "vignettes/dualKS/inst/doc/dualKS.rnw"
pvalue.f <- pv.f


###################################################
### chunk number 23: 
###################################################
#line 473 "vignettes/dualKS/inst/doc/dualKS.rnw"
pvalue.f <- dksPerm(eset, 1, type="both", samples=500)


###################################################
### chunk number 24: 
###################################################
#line 483 "vignettes/dualKS/inst/doc/dualKS.rnw"
pvalue.f(pr@predictedScore)


###################################################
### chunk number 25:  eval=FALSE
###################################################
## #line 517 "vignettes/dualKS/inst/doc/dualKS.rnw"
## cls <- factor(sample(pData(eset)[,1], 300, replace=TRUE))
## sig.up <- sample(rownames(exprs(eset), 300))
## classifier <- dksCustomClass(upgenes=sig.up, upclass=cls)
## pr.cust <- dksClassify(eset, classifier)


###################################################
### chunk number 26: 
###################################################
#line 536 "vignettes/dualKS/inst/doc/dualKS.rnw"
results <- data.frame(pr@predictedClass, pr@scoreMatrix)
results