Learn R Programming

tilingArray (version 1.50.0)

findSegments: Fit a piecewise constant curve to a sequence of numbers -- OBSOLETE, please use function segment instead.

Description

This function is only here for backward compatibility - please use segment. The function fits a piecewise constant curve to a sequence of numbers using a simple least squares cost function and the dynamic programming algorithm described by Picard et al. (see reference).

Usage

findSegments(x, maxcp, maxk, verbose=TRUE)

Arguments

x
Numeric (real) vector.
maxcp
Integer (length 1): maximum number of segments (= 1 + maximum number of change points).
maxk
Integer (length 1): maximum length of a segment.
verbose
Logical: if this parameter has a positive value, various diagnostic output is printed.

Value

An object of class "segmentation" A list with elements
J
likelihood criterion
th
matrix of segment start points
dat
the data used for the segmentation
call
the function call
.See the vignette, and the paper cited below for details.

Details

The complexity of the algorithm is length(x)*maxk in memory and length(x)*maxk*maxcp in time.

References

A statistical approach for CGH microarray data analysis. Franck Picard, Stephane Robin, Marc Lavielle, Christian Vaisse, Gilles Celeux, Jean-Jacques Daudin, Rapport de recherche No. 5139, Mars 2004, Institut National de Recherche en Informatique et en Automatique (INRIA), ISSN 0249-6399. The code of this function is based on the Matlab implementation presented at http://www.inapg.fr/ens_rech/mathinfo/recherche/mathematique/outil.html, but it has evolved.

Examples

Run this code
 x = rep( sin((0:4)/2*pi), each=3) + rnorm(3*5, sd=0.1)
 res = findSegments(x, maxcp=6, maxk=15)

Run the code above in your browser using DataLab