- astropy.stats.circstats.rayleightest(data, axis=None, weights=None)#
Performs the Rayleigh test of uniformity.
This test is used to identify a non-uniform distribution, i.e. it is designed for detecting an unimodal deviation from uniformity. More precisely, it assumes the following hypotheses: - H0 (null hypothesis): The population is distributed uniformly around the circle. - H1 (alternative hypothesis): The population is not distributed uniformly around the circle. Small p-values suggest to reject the null hypothesis.
Array of circular (directional) data, which is assumed to be in radians whenever
Axis along which the Rayleigh test will be performed.
In case of grouped data, the i-th element of
weightsrepresents a weighting factor for each group such that
np.sum(weights, axis)equals the number of observations. See , remark 1.4, page 22, for detailed explanation.
S. R. Jammalamadaka, A. SenGupta. “Topics in Circular Statistics”. Series on Multivariate Analysis, Vol. 5, 2001.
C. Agostinelli, U. Lund. “Circular Statistics from ‘Topics in Circular Statistics (2001)’”. 2015. <https://cran.r-project.org/web/packages/CircStats/CircStats.pdf>
M. Chirstman., C. Miller. “Testing a Sample of Directions for Uniformity.” Lecture Notes, STA 6934/5805. University of Florida, 2007.
D. Wilkie. “Rayleigh Test for Randomness of Circular Data”. Applied Statistics. 1983. <http://wexler.free.fr/library/files/wilkie%20(1983)%20rayleigh%20test%20for%20randomness%20of%20circular%20data.pdf>
>>> import numpy as np >>> from astropy.stats import rayleightest >>> from astropy import units as u >>> data = np.array([130, 90, 0, 145])*u.deg >>> rayleightest(data) <Quantity 0.2563487733797317>