Learn R Programming

changepoints (version 1.1.0)

tuneBSunivar: Univariate mean change points detection based on standard or wild binary segmentation with tuning parameter selected by sSIC.

Description

Perform univariate mean change points detection based on standard or wild binary segmentation. The threshold parameter tau for WBS is automatically selected based on the sSIC score defined in Equation (4) in Fryzlewicz (2014).

Usage

tuneBSunivar(BS_object, y)

Value

A list with the following structure:

cpt

A vector of estimated change point locations (sorted in strictly increasing order).

tau

A scalar of selected threshold tau based on sSIC.

Arguments

BS_object

A "BS" object produced by BS.univar or WBS.univar.

y

A numeric vector of observations.

Author

Daren Wang & Haotian Xu

References

Wang, Yu and Rinaldo (2020) <doi:10.1214/20-EJS1710>; Fryzlewicz (2014), Wild binary segmentation for multiple change-point detection, <DOI: 10.1214/14-AOS1245>.

See Also

BS.univar and WBS.univar.

Examples

Run this code
set.seed(0)
cpt_true = c(20, 50, 170)
y = rnorm(300) + c(rep(0,20),rep(2,30),rep(0,120),rep(2,130))
## change points detection by WBS
intervals = WBS.intervals(M = 100, lower = 1, upper = length(y))
temp2 = WBS.univar(y, 1, length(y), intervals$Alpha, intervals$Beta, delta = 5)
WBS_result = tuneBSunivar(temp2, y)
cpt_WBS = WBS_result$cpt
Hausdorff.dist(cpt_WBS, cpt_true)

Run the code above in your browser using DataLab