The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

BayesCPclust

BayesCPclust aims to estimate the change points in constant-wise data sequences while simultaneously performing clustering. A Gibbs sampler algorithm was developed to estimate the number of clusters, cluster assignments, number of change points, their positions, and constant levels.

For more details see paper in arXiv paper link

Installation

You can install the development version of BayesCPclust from GitHub with:

# install.packages("devtools")
devtools::install_github("acarolcruz/BayesCPclust")

Example

The following example illustrate the process of performing clustering and estimations for constant-wise change-point data using the data example ‘data’. When there is no prior knowledge of the number of change points and their locations, we suggest to initialize the algortihm with zero change points for all clusters and the position for the change points (Tl) should be defined as the number of observations (M).

d = 2 # two clusters
N = 5 # 5 data sequences
M = 50 # 50 observations for each data sequence
maxIter = 10 # number of Gibbs sampler iterations

data(data)

# initial values for each paramter and each cluster
par.values <- list(K = c(0, 0), Tl = list(50, 50), alpha = list(5, 10))

#cluster assignment for each data sequence
cluster <- kmeans(t(data), 2)$cluster

# variance for each data sequence
sigma2 <- apply(data, 2, var)

res <- run_gibbs(M, N, w = 10, d, as = 2, bs = 100, al = 2, bl = 1000, a = 2, 
b = 1000, alpha0 = 1/100, lambda = 2, maxIter = 10, par.values,
data, cluster, sigma2)

res$clusters[maxIter,]
# 3 7 7 7 7

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.