fitmssg | R Documentation |
Each d-dimensional skewed sub-Gaussian stable (SSG) random vector \bf{Y}, admits the representation given by Teimouri (2022):
{\bf{Y}} \mathop=\limits^d {\boldsymbol{μ}}+√{P}{\boldsymbol{λ}}\vert{Z}_0\vert + √{P}{Σ}^{\frac{1}{2}}{\bf{Z}}_1,
where \boldsymbol{μ} (location vector in {{{R}}}^{d}, \boldsymbol{λ} (skewness vector in {{{R}}}^{d}), Σ (positive definite symmetric dispersion matrix), and 0<α ≤q 2 (tail thickness) are model parameters. Furthermore, P is a positive stable random variable, {Z}_0\sim N({0},1), and \bf{Z}_1\sim N_{d}\bigl({\bf{0}}, Σ\bigr). We note that Z, Z_0, and \boldsymbol{Z}_1 are mutually independent.
fitmssg(Y, K, eps = 0.15, initial = "FALSE", method = "moment", starts = starts)
Y |
an n\times d matrix of observations. |
K |
number of component. |
eps |
threshold value for stopping EM algorithm. It is 0.15 by default. The algorithm can be implemented faster if |
initial |
logical statement. If |
method |
either |
starts |
a list of initial values if |
a list of estimated parameters corresponding to K clusters, predicted labels for clusters, the log-likelihood value across iterations, the Bayesian information criterion (BIC), and the Akaike information criterion (AIC).
Mahdi Teimouri
M. Teimouri, 2022. Finite mixture of skewed sub-Gaussian stable distributions, arxiv.org/abs/2205.14067.
M. Teimouri, S. Rezakhah, and A. Mohammadpour, 2018. Parameter estimation using the EM algorithm for symmetric stable random variables and sub-Gaussian random vectors, Journal of Statistical Theory and Applications, 17(3), 439-41.
J. A. Hartigan, M. A. Wong, 1979. Algorithm as 136: A k-means clustering algorithm, Journal of the Royal Statistical Society. Series c (Applied Statistics), 28, 100-108.
data(bankruptcy) out1<-fitmssg(bankruptcy[,2:3], K=2, eps = 0.15, initial="FALSE", method="moment", starts=starts) n1 <- 100 n2 <- 50 omega1 <- n1/(n1 + n2) omega2 <- n2/(n1 + n2) alpha1 <- 1.6 alpha2 <- 1.6 mu1 <- c(-1, -1) mu2 <- c(6, 6) sigma1 <- matrix( c(2, 0.20, 0.20, 0.5), 2, 2 ) sigma2 <- matrix( c(0.4, 0.10, 0.10, 0.2 ), 2, 2 ) lambda1 <- c(5, 5) lambda2 <- c(-5, -5) Sigma <- array( NA, c(2, 2, 2) ) Sigma[, , 1] <- sigma1 Sigma[, , 2] <- sigma2 starts<-list( c(omega1,omega2), c(alpha1,alpha2), rbind(mu1,mu2), Sigma, rbind(lambda1,lambda2) ) Y <- rbind( rssg(n1 , alpha1, mu1, sigma1, lambda1), rssg(n2, alpha2, mu2, sigma2, lambda2) ) out2<-fitmssg(Y, K=2, eps=0.15, initial="TRUE", method="moment", starts=starts)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.