Mixtures of rotationally symmetric distributions | R Documentation |
It performs model based clustering for circualr, spherical and hyper-spherical data assuming rotationally symetric distributions.
mixvmf.mle(x, g, n.start = 5, tol = 1e-6, maxiters = 100)
mixspcauchy.mle(x, g, n.start = 5, tol = 1e-6, maxiters = 100)
mixpkbd.mle(x, g, n.start = 5, tol = 1e-6, maxiters = 100)
x |
A matrix with the data expressed as unit vectors. |
g |
The number of groups to fit. It must be greater than or equal to 2. |
n.start |
The number of random starts to try. See also R's built-in function |
tol |
The tolerance value to terminate the EM algorithm. |
maxiters |
The maximum number of iterations to perform. |
The initial step of the algorithm is not based on a spherical k-means, but on simple k-means. The results are comparable to the package movMF for the mixtures of von Mises-Fisher distributions. The other cases are mixtures of spherical Cauchy distributions or mixtures of Poisson kernel-based distributions.
A list including:
param |
A matrix with the mean direction, the concentration parameters and mixing probability of each group. |
loglik |
The value of the maximised log-likelihood. |
pred |
The predicted group of each observation. |
w |
The estimated probabilities of each observation to belong to each cluster. |
iter |
The number of iteration required by the EM algorithm. |
runtime |
The run time of the algorithm. A numeric vector. The first element is the user time, the second element is the system time and the third element is the elapsed time. |
Michail Tsagris and Panagiotis Papastamoulis.
R implementation and documentation: Michail Tsagris mtsagris@uoc.gr and Panagiotis Papastamoulis papastamoulis@aueb.gr.
Kurt Hornik and Bettina Grun (2014). movMF: An R Package for Fitting Mixtures of von Mises-Fisher Distributions http://cran.r-project.org/web/packages/movMF/vignettes/movMF.pdf
Tsagris M. and Papastamoulis P. (2024). Directional data analysis using the spherical Cauchy and the Poisson kernel-based distribution. https://arxiv.org/pdf/2409.03292.
rmixvmf, bic.mixvmf, mixvmf.contour
k <- runif(4, 4, 6)
prob <- c(0.2, 0.4, 0.3, 0.1)
mu <- matrix(rnorm(16), ncol = 4)
mu <- mu / sqrt( rowSums(mu^2) )
x <- rmixvmf(200, prob, mu, k)$x
mixvmf.mle(x, 3)
mixvmf.mle(x, 4)
mixvmf.mle(x, 5)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.