SciPy

scipy.stats.circstd

scipy.stats.circstd(samples, high=6.283185307179586, low=0, axis=None)[source]

Compute the circular standard deviation for samples assumed to be in the range [low to high].

Parameters:

samples : array_like

Input array.

low : float or int, optional

Low boundary for circular standard deviation range. Default is 0.

high : float or int, optional

High boundary for circular standard deviation range. Default is 2*pi.

axis : int, optional

Axis along which standard deviations are computed. The default is to compute the standard deviation of the flattened array.

Returns:

circstd : float

Circular standard deviation.

Notes

This uses a definition of circular standard deviation that in the limit of small angles returns a number close to the ‘linear’ standard deviation.

Examples

>>> from scipy.stats import circstd
>>> circstd([0, 0.1*np.pi/2, 0.001*np.pi, 0.03*np.pi/2])
0.063564063306