EMsinvMmix {ClusTorus}  R Documentation 
Fitting mixtures of bivariate von Mises distribution
Description
EMsinvMmix
returns fitted parameters of Jmixture of
bivariate sine von Mises distributions.
Usage
EMsinvMmix(
data,
J = 4,
parammat = EMsinvMmix.init(data, J),
THRESHOLD = 1e10,
maxiter = 100,
type = c("circular", "axisaligned", "general"),
kmax = 500,
verbose = TRUE
)
Arguments
data 
n x 2 matrix of toroidal data on 
J 
number of components of mixture density 
parammat 
6 x J parameter data with the following components:

THRESHOLD 
number of threshold for difference between updating and updated parameters. 
maxiter 
the maximal number of iteration. 
type 
a string one of "circular", "axisaligned", "general", and "Bayesian" which determines the fitting method. 
kmax 
the maximal number of kappa. If estimated kappa is
larger than 
verbose 
boolean index, which indicates whether display additional details as to what the algorithm is doing or how many loops are done. 
Details
This algorithm is based on ECME algorithm. That is,
constructed with E  step and M  step and M  step
maximizes the parameters with given type
.
If type == "circular"
, then the mixture density is
just a product of two independent von Mises.
If type == "axisaligned"
, then the mixture density is
the special case of type == "circular"
: only need to
take care of the common concentration parameter.
Iftype == "general"
, then the fitting the mixture
density is more complicated than before, check the detail of
the reference article.
Value
returns approximated parameters for bivariate normal
distribution with list
:
list$Sigmainv[j]
: approximated covariance matrix for
jth bivariate normal distribution, approximation of the jth von Mises.
list$c[j]
: approximated 2\pi\Sigma^{1}
for
jth bivariate normal distribution, approximation of the jth von Mises.
References
Jung, S., Park, K., & Kim, B. (2021). Clustering on the torus by conformal prediction. The Annals of Applied Statistics, 15(4), 15831603.
Examples
data < ILE[1:200, 1:2]
EMsinvMmix(data, J = 3,
THRESHOLD = 1e10, maxiter = 200,
type = "general", kmax = 500, verbose = FALSE)