Learn R Programming

BoolNet (version 1.44)

binarizeTimeSeries: Binarize a set of real-valued time series

Description

Binarizes a set of real-valued time series using k-means clustering, edge detection, or scan statistics.

Usage

binarizeTimeSeries(measurements, 
                   method = c("kmeans","edgeDetector","scanStatistic"), 
                   nstart = 100, 
                   iter.max = 1000, 
                   edge = c("firstEdge","maxEdge"),                    
                   scaling = 1, 
                   windowSize = 0.25, 
                   sign.level = 0.1,
                   dropInsignificant = FALSE)

Arguments

measurements
A list of matrices, each corresponding to one time series. Each row of these matrices contains real-valued measurements for one gene on a time line, i. e. column i+1 contains the successor states of column i+1. The genes must be
method
The employed binarization technique. "kmeans" uses k-means clustering for binarization. "edgeDetector" searches for a large gradient in the sorted measurements. "scanStatistic" searches for accumulations in the measurements. See Details for descriptions o
nstart
If method="kmeans", this is the number of restarts for k-means. See kmeans for details.
iter.max
If method="kmeans", the maximum number of iterations for k-means. See kmeans for details.
edge
If method="edgeDetector", this decides which of the edges is used as a threshold for binarization. If set to "firstEdge",the binarization threshold is the first combination of two successive sorted values whose difference exceeds a predefined
scaling
If method="edgeDetector" and edge="firstEdge", this holds the scaling factor used for adjustment of the average gradient.
windowSize
If method="scanStatistic", this specifies the size of the scanning window (see Details). The size is given as a fraction of the whole range of input values for a gene. Default is 0.25.
sign.level
If method="scanStatistic", the significance level used for the scan statistic (see Details).
dropInsignificant
If this is set to true, genes whose binarizations are insignificant in the scan statistic (see Details) are removed from the binarized time series. Otherwise, a warning is printed if such genes exist.

Value

  • Returns a list with the following elements:
  • binarizedMeasurementsA list of matrices with the same structure as measurements containing the binarized time series measurements
  • rejectIf method="scanStatistic", a Boolean vector indicating for each gene whether the scan statistic algorithm was able to find a significant binarization window (FALSE) or not (TRUE). Rejected genes should probably be excluded from the data.
  • thresholdsThe thresholds used for binarization

Details

This method supports three binarization techniques: [object Object],[object Object],[object Object]

References

I. Shmulevich and W. Zhang (2002), Binary analysis and optimization-based normalization of gene expression data. Bioinformatics 18(4):555--565.

J. Glaz, J. Naus, S. Wallenstein (2001), Scan Statistics. New York: Springer.

See Also

reconstructNetwork

Examples

Run this code
library(BoolNet)

# load test data
data(yeastTimeSeries)
			
# perform binarization with k-means
bin <- binarizeTimeSeries(yeastTimeSeries)
print(bin)

# perform binarization with scan statistic
# - will find and remove 2 insignificant genes!
bin <- binarizeTimeSeries(yeastTimeSeries, method="scanStatistic",
                          dropInsignificant=TRUE, sign.level=0.2)
print(bin)

# perform binarization with edge detector
bin <- binarizeTimeSeries(yeastTimeSeries, method="edgeDetector")
print(bin)

# reconstruct a network from the data
reconstructed <- reconstructNetwork(bin$binarizedMeasurements,
                                    method="bestfit", maxK=4)
print(reconstructed)

Run the code above in your browser using DataLab