Description Usage Arguments Details Value Author(s) See Also Examples

View source: R/Finalised_coding.R

This function estimates the number and locations of multiple change-points in the mean
of the noisy piecewise-constant input vector `x`

, using the Isolate-Detect methodology. The noise
is Gaussian. The estimated signal, as well as the solution path defined in `sol_path_pcm`

are
also given. The function is a hybrid between the thresholding approach of `win_pcm_th`

and the
information criterion approach of `pcm_ic`

and estimates the change-points taking into
account both these approaches (see Details for more information and the relevant literature reference).

1 | ```
ID_pcm(x, thr_id = 1, th_ic_id = 0.9, pointsth = 3, pointsic = 10)
``` |

`x` |
A numeric vector containing the data in which you would like to find change-points. |

`thr_id` |
A positive real number with default value equal to 1. It is
used to define the threshold, if the thresholding approach is to be followed; see |

`th_ic_id` |
A positive real number with default value equal to 0.9. It is
useful only if the model selection based Isolate-Detect method is to be followed.
It is used to define the threshold value that will be used at the first step
(change-point overestimation) of the model selection approach described in |

`pointsth` |
A positive integer with default value equal to 3. It is used only when the threshold based approach is to be followed and it defines the distance between two consecutive end- or start-points of the right- or left-expanding intervals, respectively. |

`pointsic` |
A positive integer with default value equal to 10. It is used only when the information criterion based approach is to be followed and it defines the distance between two consecutive end- or start-points of the right- or left-expanding intervals, respectively. |

Firstly, this function detects the change-points using `win_pcm_th`

.
If the estimated number of change-points is larger than 100, then the
result is returned and we stop. Otherwise, `ID_pcm`

proceeds to detect the
change-points using `pcm_ic`

and this is what is returned. To sum up,
`ID_pcm`

returns a result based on `pcm_ic`

if the estimated number
of change-points is less than 100. Otherwise, the result comes from thresholding.
More details can be found in “Detecting multiple generalized change-points by
isolating single ones”, Anastasiou and Fryzlewicz (2018), preprint.

A list with the following components:

`cpt` | A vector with the detected change-points. |

`no_cpt` | The number of change-points detected. |

`fit` | A numeric vector with the estimated piecewise-constant signal. |

`solution_path` | A vector containing the solution path. |

Andreas Anastasiou, a.anastasiou@lse.ac.uk

`win_pcm_th`

and `pcm_ic`

which are the functions that `ID_pcm`

is based on. In addition, see `ID_cplm`

for the case of detecting changes
in a continuous, piecewise-linear signal. The main function `ID`

of the package employs `ID_pcm`

.

1 2 3 4 5 6 7 8 9 10 11 | ```
single.cpt <- c(rep(4,1000),rep(0,1000))
single.cpt.noise <- single.cpt + rnorm(2000)
cpts_detect <- ID_pcm(single.cpt.noise)
three.cpt <- c(rep(4,500),rep(0,500),rep(-4,500),rep(1,500))
three.cpt.noise <- three.cpt + rnorm(2000)
cpts_detect_three <- ID_pcm(three.cpt.noise)
multi.cpt <- rep(c(rep(0,50),rep(3,50)),20)
multi.cpt.noise <- multi.cpt + rnorm(2000)
cpts_detect_multi <- ID_pcm(multi.cpt.noise)
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.