Learn R Programming

snem (version 0.1.1)

snem: EM algorithm for multivariate skew normal distribution.

Description

EM algorithm in closed form.

Usage

snem(
  x,
  eps = 0.9,
  iter.eps = 10^-6,
  stop.rule = c("parameter", "log-likelihood")
)

Arguments

x

A data matrix. Each row is an observation vector.

eps

Weight parameter with \(0 \le eps < 1\). Default is 0.9.

iter.eps

Convergence threshold. Default is 10^-6.

stop.rule

"parameter": The difference of the parameter is used as a stopping rule. "log-likelihood" The difference of the log-likelihood is used as a stopping rule.

Value

Location parameter (mu), covariance matrix (omega), skewness parameter (delta), and another expression of skewness parameter (lambda).

Details

The parameter eps is a tuning parameter which ensures that an initial covariance matrix is positive semi-definite.

References

Abe, T., Fujisawa, H., and Kawashima, T. (2019) EM algorithm using overparametrization for multivariate skew-normal distribution, in preparation.

Examples

Run this code
# NOT RUN {
library(sn)
data(ais, package="sn")
x <- ais[c("BMI")]
snem(x, stop.rule ="log-likelihood")
# }

Run the code above in your browser using DataLab