UpdateBiclust_RowNoise {BiBitR} | R Documentation |
Update a Biclust or BiBitWorkflow Object with a new Noise Level
Description
Apply a new noise level on a Biclust object result or BiBitWorkflow result. See Details on how both objects are affected.
Usage
UpdateBiclust_RowNoise(result, matrix, noise = 0.1, noise_select = 0,
removeBC = FALSE)
Arguments
result |
A Biclust or BiBitWorkflow Object. |
matrix |
Accompanying binary data matrix which was used to obtain |
noise |
The new noise level which should be used in the rows of the biclusters. (default=
|
noise_select |
Should the allowed noise level be automatically selected for each pattern? (Using ad hoc method to find the elbow/kink in the Noise Scree plots)
|
removeBC |
(Only applicable when result is a Biclust object) Logical value if after applying a new noise level, duplicate and non-maximal BC's should be deleted. |
Details
- Biclust S4 Object
-
Using the column patterns of the Biclust result, new grows are grown using the inputted
noise
level. TheremoveBC
parameter decides if duplicate and non-maximal BC's should be deleted. Afterwards a newBiclust
S4 object is returned with the new biclusters. - BiBitWorkflow S3 Object
-
The merged column patterns (after cutting the hierarchical tree) are extracted from the BiBitWorkflow object, namely the
$info$MergedColPatterns
slot. Afterwards, using the newnoise
level, new rows are grown and the returned object is an updatedBiBitWorkflow
object. (e.g. The final Biclust slot, MergedNoiseThresholds, coverage,etc. are updated)
Value
A Biclust
or BiBitWorkflow
Object (See Details)
Author(s)
Ewoud De Troyer
Examples
## Not run:
## Prepare some data ##
set.seed(254)
mat <- matrix(sample(c(0,1),5000*50,replace=TRUE,prob=c(1-0.15,0.15)),
nrow=5000,ncol=50)
mat[1:200,1:10] <- matrix(sample(c(0,1),200*10,replace=TRUE,prob=c(1-0.9,0.9)),
nrow=200,ncol=10)
mat[300:399,6:15] <- matrix(sample(c(0,1),100*10,replace=TRUE,prob=c(1-0.9,0.9)),
nrow=100,ncol=10)
mat[400:599,21:30] <- matrix(sample(c(0,1),200*10,replace=TRUE,prob=c(1-0.9,0.9)),
nrow=200,ncol=10)
mat[700:799,29:38] <- matrix(sample(c(0,1),100*10,replace=TRUE,prob=c(1-0.9,0.9)),
nrow=100,ncol=10)
mat <- mat[sample(1:5000,5000,replace=FALSE),sample(1:50,50,replace=FALSE)]
## Apply BiBitWorkflow ##
out <- BiBitWorkflow(matrix=mat,minr=50,minc=5,noise=0.1,cut_type="number",cut_pm=4)
summary(out$Biclust)
## Update Rows with new noise level on Biclust Obect -> returns Biclust Object ##
out_new <- UpdateBiclust_RowNoise(result=out$Biclust,matrix=mat,noise=0.3)
summary(out_new)
out_new@info$Noise.Threshold # New Noise Levels
## Update Rows with new noise level on BiBitWorkflow Obect -> returns BiBitWorkflow Object ##
out_new2 <- UpdateBiclust_RowNoise(result=out,matrix=mat,noise=0.2)
summary(out_new2$Biclust)
out_new2$info$MergedNoiseThresholds # New Noise Levels
## End(Not run)