vonmisesmle#

astropy.stats.circstats.vonmisesmle(data: NDArray | Quantity, axis: int | None = None, weights: NDArray | None = None) tuple[float | Quantity, float | Quantity][source]#

Computes the Maximum Likelihood Estimator (MLE) for the parameters of the von Mises distribution.

Parameters:
datandarray or Quantity

Array of circular (directional) data, which is assumed to be in radians whenever data is numpy.ndarray.

axispython:int, optional

Axis along which the mle will be computed.

weightsnumpy.ndarray, optional

In case of grouped data, the i-th element of weights represents a weighting factor for each group such that sum(weights, axis) equals the number of observations. See [1], remark 1.4, page 22, for detailed explanation.

Returns:
mupython:float or Quantity

The mean (aka location parameter).

kappapython:float or Quantity [:ref: ‘dimensionless’]

The concentration parameter.

References

[1]

S. R. Jammalamadaka, A. SenGupta. “Topics in Circular Statistics”. Series on Multivariate Analysis, Vol. 5, 2001.

[2]

C. Agostinelli, U. Lund. “Circular Statistics from ‘Topics in Circular Statistics (2001)’”. 2015. <https://cran.r-project.org/web/packages/CircStats/CircStats.pdf>

Examples

>>> import numpy as np
>>> from astropy.stats import vonmisesmle
>>> from astropy import units as u
>>> data = np.array([130, 90, 0, 145])*u.deg
>>> vonmisesmle(data) 
(<Quantity 101.16894320013179 deg>, <Quantity 1.49358958737054>)