Nothing
## ----style, echo = FALSE, results = 'asis'------------------------------------
BiocStyle::markdown()
library(ggplot2)
## ----echo=TRUE, eval=TRUE, message=FALSE--------------------------------------
library(ClusterSignificance)
## ---- demoDataMlp-------------------------------------------------------------
data(mlpMatrix)
## ----headMat, echo=FALSE, eval=TRUE-------------------------------------------
##Mlp
printMat <- mlpMatrix
classes <- rownames(mlpMatrix)
dimnames(printMat) <- list(classes, paste("dim", 1:2, sep = ""))
knitr::kable(
printMat[1:3,],
digits = 2,
caption = "Head; Mlp matrix.",
align = c(rep('l', 2))
)
gTable <- as.data.frame(table(classes))
knitr::kable(
gTable,
digits = 2,
align = c(rep('l', 2)),
caption = "Rownames table; Mlp matrix."
)
## ---- demoDataPcp-------------------------------------------------------------
data(pcpMatrix)
## ----headPcp, echo=FALSE------------------------------------------------------
##Pcp
printMat <- pcpMatrix
classes <- rownames(pcpMatrix)
dimnames(printMat) <- list(classes, paste("dim", 1:3, sep=""))
knitr::kable(
printMat[1:3,],
digits = 2,
caption = "Head; Pcp matrix.",
align = c(rep('l', 2))
)
gTable <- as.data.frame(table(classes))
knitr::kable(
gTable,
digits = 2,
align = c(rep('l', 2)),
caption = "Rownames table; Pcp matrix."
)
## ----PcpProjection, fig.align='center', fig.width=10, fig.height=10-----------
## Create the group variable.
classes <- rownames(pcpMatrix)
## Run Pcp and plot.
prj <- pcp(pcpMatrix, classes)
plot(prj)
## ----classifyPcp, message=FALSE, fig.width=10, fig.height=7-------------------
cl <- classify(prj)
plot(cl)
## -----------------------------------------------------------------------------
getData(cl, "AUC")
## ----permutePcp, message=FALSE, fig.width=10, fig.height=7--------------------
#permute matrix
iterations <- 100 ## Set the number of iterations.
## Permute and plot.
pe <- permute(
mat = pcpMatrix,
iter = iterations,
classes = classes,
projmethod = "pcp"
)
plot(pe)
## ----pValuePcp, echo=TRUE, eval=TRUE, message=FALSE---------------------------
pvalue(pe)
## ---- confIntPcp, echo=TRUE, eval=TRUE, message=FALSE-------------------------
conf.int(pe, conf.level = .99)
## ---- fig.align='center', fig.width=10, fig.height=8--------------------------
## Create the group variable.
classes <- rownames(mlpMatrix)
## Run Mlp and plot.
prj <- mlp(mlpMatrix, classes)
plot(prj)
## ----classifyMlp, message=FALSE, fig.align='center', fig.width=8, fig.height=6----
## Classify and plot.
cl <- classify(prj)
plot(cl)
## ----permuteMlp, message=FALSE, fig.align='center', message = FALSE-----------
## Set the seed and number of iterations.
iterations <- 500
## Permute and plot.
pe <- permute(
mat = mlpMatrix,
iter = iterations,
classes = classes,
projmethod = "mlp"
)
plot(pe)
## ----pValueMlp, echo=FALSE, eval=TRUE, message=FALSE--------------------------
## p-value
pvalue(pe)
conf.int(pe)
## ----echo=TRUE, eval=TRUE, message=FALSE--------------------------------------
## The leukemia dataset is provided as a list with 3 elements.
## An explaination of these can be found using the command:
## help(leukemia)
library(plsgenomics, quietly = TRUE)
data(leukemia)
## Extract the expression matrix.
expression <- leukemia$X
## Run PCA and extract the principal components.
pca <- prcomp(expression, scale = TRUE)
mat <- pca$x
## Extract the grouping variable (coded as 1 (ALL) and 2 (AML)).
classes <- ifelse(leukemia$Y == 1, "ALL", "AML")
## ---- echo = FALSE------------------------------------------------------------
gTable <- as.data.frame(table(classes))
knitr::kable(gTable,
digits = 2,
align = c(rep('l', 2)),
caption = "Classes argument table."
)
## ----ALLprojection, fig.align='center', fig.width=10, fig.height=10-----------
ob <- pcp(mat, classes, normalize = TRUE)
plot(ob)
## ----ALLclassification, fig.align='center', fig.width=8, fig.height=6---------
cl <- classify(ob)
plot(cl)
## ----ALLpermutation, fig.align='center', message = FALSE----------------------
iterations <- 100
pe <- permute(mat = mat, iter = iterations, classes = classes, projmethod = "pcp")
pvalue(pe)
conf.int(pe)
## ----concatPermuts, message=FALSE, eval=TRUE----------------------------------
mat <- mlpMatrix
classes <- rownames(mlpMatrix)
iterations <- 10
pe1 <- permute(mat=mat, iter=iterations, classes=classes, projmethod="pcp")
pe2 <- permute(mat=mat, iter=iterations, classes=classes, projmethod="pcp")
pe3 <- permute(mat=mat, iter=iterations, classes=classes, projmethod="pcp")
pvalue(pe1)
pe <- c(pe1, pe2, pe3)
pvalue(pe)
## ----userDefinedPermats, eval=TRUE--------------------------------------------
##define permMatrix function
.pca <- function(y, classes, uniq.groups, mat) {
pca <- prcomp(
sapply(1:ncol(mat[classes %in% uniq.groups[, y], ]),
function(i)
mat[classes %in% uniq.groups[, y], i] <-
sample(
mat[classes %in% uniq.groups[, y], i],
replace=FALSE
)
), scale=TRUE
)
return(pca$x)
}
permMatrix <- function(iterations, classes, mat) {
uniq.groups <- combn(unique(classes), 2)
permats <- lapply(1:ncol(uniq.groups),
function(y)
lapply(1:iterations,
function(x)
.pca(y, classes, uniq.groups, mat)
)
)
return(permats)
}
set.seed(3)
mat <- pcpMatrix
classes <- rownames(pcpMatrix)
iterations = 100
permats <- permMatrix(iterations, classes, mat)
## ----runUserDefinedMatrix, eval=FALSE-----------------------------------------
# pe <- permute(
# mat = mat,
# iter=100,
# classes=classes,
# projmethod="pcp",
# userPermats=permats
# )
## ----echo=TRUE, eval=TRUE-----------------------------------------------------
sessionInfo()
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.