This function performs cross-entropy clustering on a data matrix.
It is based on cec
but is limited to 2D matrices and
implements its own splitting process.
kbox(
x,
centers = 1,
iter.max = 10,
split = FALSE,
split.width = Inf,
split.height = Inf,
split.density = 0,
min.size = 0,
split.sensitivity = 0
)
A numeric matrix with two columns.
Either a matrix of initial centers or the number of initial centers.
Maximum number of iterations at each clustering.
Enables split mode. This mode discovers new clusters after initial clustering, by trying to split single clusters into two.
The maximum authorized width of a cluster. If a cluster is
wider than split.width
, the function will attempt to split it in two.
The maximum authorized height of a cluster. If a cluster
is higher than split.height
, the function will attempt to split it in
two.
The minimum authorized density of a cluster. If a
cluster is less dense than split.density
, the function will attempt
to split it in two.
The minimum authorized size (in number of items) of a cluster.
If a cluster is smaller than min.size
, the function will attempt to
split it in two.
The minimum amount of improvement in the cost function of the cross-entropy clustering for a splitting event to be considered valid.
A matrix with 6 columns: x and y coordinates of the centers of the clusters, width, height, and angle of the covariance ellipse best describing each cluster, and the number of element in each cluster.