## ----load_libraries, message=FALSE----------------------------------------- library(MultiDataSet) library(Biobase) library(minfi) ## ----create_data, echo=FALSE, eval=TRUE, message=FALSE--------------------- library(brgedata) data("brge_gexp") # Get the ExpressionSet from brgedata gSet1 <- brge_gexp[sample(1:21916, 300), 1:50] # Create ExpressionSet with samples from 01 to 50 gSet2 <- brge_gexp[sample(1:21916, 300), 35:61] # Create ExpressionSet with samples from 35 to 64 data("brge_methy") mSet <- brge_methy[sample(1:40000, 300),] # setwd("/home/chernandez/Projects/multidataset/Tutorials/") save(gSet1, gSet2, file="expression.RData") save(mSet, file="methylation.RData") ## ----load_data------------------------------------------------------------- load("expression.RData") load("methylation.RData") ls() ## ----common_samples_1------------------------------------------------------ ## gSet1 intersection gSet2 length(intersect(sampleNames(gSet1), sampleNames(gSet2))) ## gSet1 intersection mSet length(intersect(sampleNames(gSet1), sampleNames(mSet))) ## gSet2 intersection mSet length(intersect(sampleNames(gSet2), sampleNames(mSet))) ## ----common_samples_2------------------------------------------------------ ## gSet1 intersection gSet2 intersection mSet length(intersect(intersect( sampleNames(gSet1), sampleNames(gSet2)), sampleNames(mSet))) ## ----create_multidataset_1------------------------------------------------- md <- createMultiDataSet() md ## ----add_element_1, warning=FALSE------------------------------------------ md.e <- add_genexp(md, gSet1) md.e ## ----add_element_error, warning=FALSE, error=TRUE-------------------------- md.e <- add_genexp(md.e, gSet2) ## ----rm_mde, include=FALSE------------------------------------------------- rm(md.e) ## ----add_element_2, warning=FALSE------------------------------------------ md <- add_genexp(md, gSet1, dataset.name = "gSet1") md <- add_genexp(md, gSet2, dataset.name = "gSet2") md ## ----add_element_3, warning=FALSE------------------------------------------ md <- add_methy(md, mSet) md ## ----n_sets---------------------------------------------------------------- length(md) names(md) ## ----load_omicade4, message=FALSE------------------------------------------ library(omicade4) ## ----list_three_sets, error=TRUE, warning=FALSE---------------------------- dat <- list( assayDataElement(gSet1, "exprs"), assayDataElement(gSet2, "exprs"), assay(mSet, "Beta") ) ## ----mcia_three_sets, error=TRUE, warning=FALSE---------------------------- fit <- mcia(dat) ## ----mcia_dim_common_mds--------------------------------------------------- md.r <- commonSamples(md) ## ----veryfi_dim------------------------------------------------------------ lapply(as.list(md.r), dim) ## ----mcia_mds-------------------------------------------------------------- fit <- mcia(as.list(md.r)) ## ----mcia_mds_wrapper------------------------------------------------------ fit <- w_mcia(md) ## ----mcia_output----------------------------------------------------------- fit ## ----load_iclusterplus, message=FALSE-------------------------------------- library(iClusterPlus) ## ----iclusterplus_three_datasets, error=TRUE, cache=TRUE------------------- fit <- iClusterPlus( dt1 = assayDataElement(gSet1, "exprs"), dt2 = assayDataElement(gSet2, "exprs"), dt3 = assay(mSet, "Beta"), type = c("gaussian", "gaussian", "gaussian"), lambda = c(0.04,0.61,0.90), K = 3, maxiter = 10 ) ## ---- iclusterplus_mds_wrapper--------------------------------------------- fit <- w_iclusterplus( md, lambda = c(0.04,0.61,0.90), K = 3, maxiter = 10 ) ## ----iclusterplus_show, message=FALSE, warning=FALSE----------------------- library(lattice) # Required for iClusterPlus's plotHeatmap library(gplots) # Required to generate the colour-schemes col.scheme <- alist() col.scheme[[1]] <- bluered(256) # colours for gSet1 col.scheme[[2]] <- bluered(256) # colours for gSet2 col.scheme[[3]] <- greenred(256) # colours for mSet plotHeatmap(fit=fit,datasets=lapply(as.list(commonSamples(md)), t), type=c("gaussian","gaussian","gaussian"), col.scheme = col.scheme, row.order=c(TRUE,TRUE,TRUE),sparse=c(TRUE,FALSE,TRUE),cap=c(FALSE,FALSE,FALSE) ) ## ---- eval=FALSE----------------------------------------------------------- # setMethod( # f = "w_mcia", # signature = "MultiDataSet", # definition = function(object, ...) { # # Obtain the common samples between datasets # object <- commonSamples(object) # # # Call mcia with the generated arguments and the user's arguments # omicade4::mcia(as_list(object), ...) # } # ) ## ---- eval=FALSE----------------------------------------------------------- # setMethod( # f = "w_iclusterplus", # signature = "MultiDataSet", # definition = function(object, commonSamples=TRUE, ...) { # if(length(object) > 4) { # stop("'iClusterPlus' only allows four datasets.") # } # # # Obtain the common samples between datasets # if(commonSamples) { # object <- commonSamples(object) # } # # # Put the names iClusterPlus requires on the datasets # datasets <- lapply(as.list(object), t) # names(datasets) <- paste("dt", 1:length(datasets), sep="") # # # Generate the "type" argument for iClusterPlus # datasets[["type"]] <- sapply(names(object), function(nm) { # ifelse(startsWith(nm, "expression"), "gaussian", # ifelse(startsWith(nm, "methylation"), "gaussian", "multinomial")) # }) # names(datasets[["type"]]) <- paste("dt", 1:(length(datasets) -1), sep="") # # # Call iClusterPlus with the generated arguments and the user's arguments # do.call("iClusterPlus", c(datasets, list(...))) # } # )