Change Point Detection Packages in R

来源:互联网 发布:移动数据终端 编辑:程序博客网 时间:2024/05/21 07:53

Change Point Detection Packages in R

Thanks to the R community, there are packages already existing on CRAN all focusing on change point detection. Especially the following packages are useful because they are not restricted to a special application domain and applicable to time series in general:

  • CPM – “Parametric and Nonparametric Sequential Change Detection in R”:
    Useful for detecting multiple change points in a time series from an unknown underlying distribution. Another bonus is that the method is applicable to data streams, where an observation is only considered once. Because of the “stream nature” of the cpm approach a second output are the detection points themselves. They mark the time when the change point is detected by the algorithm and quantify the delay. Unfortunately the cpm package is no longer maintained on CRAN. For windows users I uploaded a zipped version of the installed package from my R library here. It should work with R 3.0 and 3.1 under Windows 7/8.
  • BCP – “An R Package for Performing a Bayesian Analysis of Change Point Problems”:
    A package using Markov Chain Monte Carlo to find multiple change points within a sequence. The implementation is generalized to the multivariate case where we expect that within a segment all sequences have a constant mean where the mean is not necessarily the same for all sequences. Finding change points in multivariate time series is not discussed in this posting.
  • ECP – “An R Package for Nonparametric Multiple Change Point Analysis of Multivariate Data”:
    Another package for the detection of multiple change points within a time series that is also applicable to multivariate time series and makes no assumptions about the distribution. It uses an approach similar to hierarchical clustering with either a divisive or an agglomerative procedure to identify the change points. Even if it is not explicitly stated, most probably the “E” stands for energy as the method is using the energy statistic ofSzékely and Rizzo to identify changes.

There exist further packages in R for change point detection (for example the changepoint-package). An extensive overview  over packages, prototypical code and code snippets can be foundhere. But for this post we continue with the three packages listed above.

0 0
原创粉丝点击