R: Find the optimal arrangement of biclusters for visualization...
OrderEV
R Documentation
Find the optimal arrangement of biclusters for visualization in
ExpressionView
Description
Finds the optimal arrangement of possibly overlapping
biclusters that maximizes the areas of the largest contiguous parts of
the biclusters. The reordering is necessary to obtain a visually
appealing layout of the biclusters.
Usage
## S4 method for signature 'ISAModules'
OrderEV(biclusters, initialorder, maxtime, debuglevel)
## S4 method for signature 'Biclust'
OrderEV(biclusters, initialorder, maxtime, debuglevel)
## S4 method for signature 'list'
OrderEV(biclusters, initialorder, maxtime, debuglevel)
Arguments
biclusters
An ISAModules object, a
Biclust object or a named list. The last one
is probably coming from the isa2 package.
initialorder
A list containing the initial order. Usually the
output of a previous ordering.
maxtime
The maximal computation time in seconds. The default
value is one minute (maxtime=60).
debuglevel
The level of information provided during the
ordering. By default, the debug output is turned off
(debuglevel=0).
Details
OrderEV performs a brute-force ordering of the biclusters, treating
the rows and the columns of the matrix independently. The ordering
algorithm is described in more detail in the accompanying vignette of
the package.
Value
A named list is returned with the following elements:
rows / genes
A list containing the maps between the rows of the
initial and the optimally ordered gene expression matrix. The first
element represents the map of the complete data set, while the
subsequent entries contain the row maps of the data sets projected
onto the individual clusters. This entry is called
‘rows’ if the function is called with a simple list as
the first argument, and ‘genes’ otherwise.
cols / samples
A list containing the maps between the columns of
the initial and the optimally ordered gene expression matrix. The
first element represents the map of the complete data set, while the
subsequent entries contain the column maps of the data sets
projected onto the individual clusters. This entry is called
‘cols’ if the function is called with a simple list as
the first argument, and ‘samples’ otherwise.
status
A list containing the status of the ordering. The list
has two entries, named genes and samples (or
rows and cols if the function was called with a simple
list as the first argument). Each entry is a numeric vector of ones
and zeros. A 1 indicates that the map is fully optimized,
whereas a 0 signals that the ordering could not be completely
within the given time frame.
## We generate some noisy in-silico data with biclusters,
## scramble the initially ordered arrangement
## identify the bicluster with the Iterative Signature Algorithm (ISA)
## and order the results with the OrderEV function
library(isa2)
data.in.silico <- isa.in.silico(noise=0.1)[[1]]
data.in.silico <- data.in.silico[sample(c(1:dim(data.in.silico)[1])),
sample(c(1:dim(data.in.silico)[2]))]
isa.results <- isa(data.in.silico)
optimalorder <- OrderEV(isa.results)
str(optimalorder)
## Create a plot for the scrambled and the optimal orderings
## Not run:
layout(rbind(1:2))
image(data.in.silico)
image(data.in.silico[optimalorder$rows[[1]],
optimalorder$cols[[1]]])
## End(Not run)
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(ExpressionView)
Loading required package: caTools
Loading required package: bitops
Loading required package: isa2
Loading required package: eisa
Loading required package: Biobase
Loading required package: BiocGenerics
Loading required package: parallel
Attaching package: 'BiocGenerics'
The following objects are masked from 'package:parallel':
clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
clusterExport, clusterMap, parApply, parCapply, parLapply,
parLapplyLB, parRapply, parSapply, parSapplyLB
The following objects are masked from 'package:stats':
IQR, mad, xtabs
The following objects are masked from 'package:base':
Filter, Find, Map, Position, Reduce, anyDuplicated, append,
as.data.frame, cbind, colnames, do.call, duplicated, eval, evalq,
get, grep, grepl, intersect, is.unsorted, lapply, lengths, mapply,
match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, rank,
rbind, rownames, sapply, setdiff, sort, table, tapply, union,
unique, unsplit
Welcome to Bioconductor
Vignettes contain introductory material; view with
'browseVignettes()'. To cite Bioconductor, see
'citation("Biobase")', and for packages 'citation("pkgname")'.
Loading required package: AnnotationDbi
Loading required package: stats4
Loading required package: IRanges
Loading required package: S4Vectors
Attaching package: 'S4Vectors'
The following object is masked from 'package:caTools':
runmean
The following objects are masked from 'package:base':
colMeans, colSums, expand.grid, rowMeans, rowSums
Loading required package: GO.db
Loading required package: KEGG.db
KEGG.db contains mappings based on older data because the original
resource was removed from the the public domain before the most
recent update was produced. This package should now be considered
deprecated and future versions of Bioconductor may not have it
available. Users who want more current data are encouraged to look
at the KEGGREST or reactome.db packages
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/ExpressionView/OrderEV.Rd_%03d_medium.png", width=480, height=480)
> ### Name: OrderEV
> ### Title: Find the optimal arrangement of biclusters for visualization in
> ### ExpressionView
> ### Aliases: OrderEV OrderEV-methods OrderEV,ISAModules-method
> ### OrderEV,Biclust-method OrderEV,list-method
> ### Keywords: cluster
>
> ### ** Examples
>
> ## We generate some noisy in-silico data with biclusters,
> ## scramble the initially ordered arrangement
> ## identify the bicluster with the Iterative Signature Algorithm (ISA)
> ## and order the results with the OrderEV function
> library(isa2)
> data.in.silico <- isa.in.silico(noise=0.1)[[1]]
> data.in.silico <- data.in.silico[sample(c(1:dim(data.in.silico)[1])),
+ sample(c(1:dim(data.in.silico)[2]))]
> isa.results <- isa(data.in.silico)
> optimalorder <- OrderEV(isa.results)
ordering 300 rows ordering rows in module 1 ordering rows in module 2 ordering rows in module 3 ordering rows in module 4 ordering rows in module 5 ordering rows in module 6 ordering 50 columns ordering columns in module 1 ordering columns in module 2 ordering columns in module 3 ordering columns in module 4 ordering columns in module 5 ordering columns in module 6 ordering done.
> str(optimalorder)
List of 3
$ rows :List of 7
..$ : int [1:300] 1 3 12 13 15 18 19 22 23 29 ...
..$ : int [1:50] 1 2 3 4 5 6 7 8 9 10 ...
..$ : int [1:50] 1 2 3 4 5 6 7 8 9 10 ...
..$ : int [1:50] 1 2 3 4 5 6 7 8 9 10 ...
..$ : int [1:100] 1 2 7 8 9 10 11 12 13 14 ...
..$ : int [1:100] 1 2 5 6 7 8 9 11 12 14 ...
..$ : int [1:100] 1 3 4 6 10 15 16 17 18 19 ...
$ cols :List of 7
..$ : int [1:50] 2 16 19 20 22 25 27 28 3 5 ...
..$ : int [1:8] 1 2 3 4 5 6 7 8
..$ : int [1:8] 1 2 3 4 5 6 7 8
..$ : int [1:8] 1 2 3 4 5 6 7 8
..$ : int [1:16] 1 6 7 8 9 10 11 12 2 3 ...
..$ : int [1:16] 1 3 5 8 9 11 12 15 2 4 ...
..$ : int [1:16] 1 5 7 8 9 10 11 12 2 3 ...
$ status:List of 2
..$ rows: num [1:7] 1 1 1 1 1 1 1
..$ cols: num [1:7] 1 1 1 1 1 1 1
>
> ## Create a plot for the scrambled and the optimal orderings
> ## Not run:
> ##D layout(rbind(1:2))
> ##D image(data.in.silico)
> ##D image(data.in.silico[optimalorder$rows[[1]],
> ##D optimalorder$cols[[1]]])
> ## End(Not run)
>
>
>
>
>
> dev.off()
null device
1
>