Metadata-Version: 2.1
Name: mvem
Version: 0.1.4
Summary: Maximum likelihood estimation in multivariate probability distributions using EM algorithms
Home-page: https://github.com/krisskul/multivariate_em
Author: Kristoffer Skuland
Author-email: kristoffer.skuland@gmail.com
License: wtfpl
Keywords: maximum likelihood parameter estimation multivariate probability distribution EM algorithm
Platform: UNKNOWN
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE.md

# Maximum Likelihood Estimation in Multivariate Probability Distributions Using EM Algorithms

**mvem** is a Python package that provides maximum likelihood estimation methods for multivariate probability distributions using expectationâ€“maximization (EM) algorithms. Additionally, it includes some functionality for fitting non-Gaussian multivariate mixture models. For fitting a wide range of univariate probability distributions, we refer to `scipy.stats`.

Currently included:
- normal (`mvem.stats.multivariate_norm`)
- skew normal (`mvem.stats.multivariate_skewnorm`)
- Student's *t* (`mvem.stats.multivariate_t`)
- normal-inverse Gaussian (`mvem.stats.multivariate_norminvgauss`)
- generalised hyperbolic skew Student's *t* (`mvem.stats.multivariate_genskewt`)
- generalised hyperbolic (`mvem.stats.multivariate_genhyperbolic`)
- hyperbolic (`mvem.stats.multivariate_hyperbolic`)
- variance-gamma (`mvem.stats.multivariate_vargamma`)

Multivariate mixture models currently included:
- skew normal (`mvem.mixture.skewnorm`)

## Where to get it
The source code is currently hosted on GitHub at: https://github.com/krisskul/mvem

Binary installers for the latest released version are available at the [Python Package Index (PyPI)](https://pypi.org/project/mvem).

```sh
pip install mvem
```

## Quickstart

Documentation and a few introductory notebooks are hosted at [readthedocs](https://mvem.readthedocs.io/en/latest/index.html).

```
from mvem.stats import multivariate_norminvgauss
# assume p-variate data x
params = multivariate_norminvgauss.fit(x)
```

## Requirements

Tested on Python 3.6

```
numpy
scikit-learn
scipy>=1.6.0
```

