Multivariate skew normal random values simulation on the simplex
Multivariate skew normal random values simulation on the simplex.
rcompsn(n, xi, Omega, alpha, dp = NULL, type = "alr")
n |
The sample size, a numerical value. |
xi |
A numeric vector of length d representing the location parameter of the distribution. |
Omega |
A d \times d symmetric positive-definite matrix of dimension. |
alpha |
A numeric vector which regulates the slant of the density. |
dp |
A list with three elements, corresponding to xi, Omega and alpha described above. The default value is FALSE. If dp is assigned, individual parameters must not be specified. |
type |
The alr (type = "alr") or the ilr (type = "ilr") is to be used for closing the Euclidean data onto the simplex. |
The algorithm is straightforward, generate random values from a multivariate t distribution in R^d and brings the values to the simplex S^d using the inverse of a log-ratio transformation.
A matrix with the simulated data.
Michail Tsagris
R implementation and documentation: Michail Tsagris mtsagris@uoc.gr and Giorgos Athineou <gioathineou@gmail.com>
Azzalini, A. and Dalla Valle, A. (1996). The multivariate skew-normal distribution. Biometrika, 83(4): 715-726.
Azzalini, A. and Capitanio, A. (1999). Statistical applications of the multivariate skew normal distribution. Journal of the Royal Statistical Society Series B, 61(3):579-602. Full-length version available from http://arXiv.org/abs/0911.2093
Aitchison J. (1986). The statistical analysis of compositional data. Chapman \& Hall.
x <- as.matrix(iris[, 1:2]) par <- sn::msn.mle(y = x)$dp y <- rcompsn(100, dp = par) comp.den(y, dist = "skewnorm") ternary(y)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.