大约#

astropy.stats.circstats.circstd(data, axis=None, weights=None, method='angular')[源代码]#

计算循环数据数组的循环标准差。

此处实施的标准偏差基于 [1], 这也是R包'CirStat'使用的相同方法 [2].

实现了两种方法:“角度”和“圆形”。前者定义为sqrt(2 * (1 - R)) and it is bounded in [0, 2* 圆周率]。后者被定义为sqrt(-2*ln(R))并且它在 [0,inf] .

在“CircStat”之后,用于获取标准偏差的默认方法是“angular”。

参数:
data : ndarrayQuantityNdarray或数量

圆形(定向)数据的数组,假定在任何时候都以弧度表示 datanumpy.ndarray 。如果是数量,则必须是无量纲的。

axis : int ,可选PYTHON:int,可选

计算循环方差的轴。默认值是计算展平数组的方差。

weights : numpy.ndarray ,可选努比·恩达雷,可选

对于分组数据,第i个元素 weights 表示每个组的权重因子,以便 sum(weights, axis) 等于观察数。看到了吗 [3], 备注1.4,第22页,详细说明。

method : str ,可选Python:字符串,可选

用于估计标准差的方法:

  • “角度”:获取角度偏差

  • “循环”:获取圆偏差

返回:
circstdNdarray或数量 [:ref: 'dimensionless']

角度或圆形标准偏差。

工具书类

[1]

P、 贝伦斯。”CircStat:一个用于循环统计的MATLAB工具箱。统计软件杂志,第31卷,第10期,2009年。

[2]

C、 阿古斯蒂内利,U.Lund“循环统计专题(2001)”中的循环统计。2015<https://cran.r-project.org/web/packages/CircStats/CircStats.pdf>

[3]

S、 R.Jammalamadaka,A.SenGupta.“循环统计专题”。多元分析系列,第5卷,2001年。

实例

>>> import numpy as np
>>> from astropy.stats import circstd
>>> from astropy import units as u
>>> data = np.array([51, 67, 40, 109, 31, 358])*u.deg
>>> circstd(data) 
<Quantity 0.57195022>

或者,使用“循环”方法:

>>> import numpy as np
>>> from astropy.stats import circstd
>>> from astropy import units as u
>>> data = np.array([51, 67, 40, 109, 31, 358])*u.deg
>>> circstd(data, method='circular') 
<Quantity 0.59766999>