scipy.stats.

mvsdist#

scipy.stats.mvsdist(data)[source]#

用于表示数据均值、方差和标准差的“冻结”分布。

参数:
dataarray_like

输入数组。使用 ravel 转换为一维数组。需要 2 个或更多数据点。

返回:
mdist“冻结”分布对象

表示数据均值的分布对象。

vdist“冻结”分布对象

表示数据方差的分布对象。

sdist“冻结”分布对象

表示数据标准差的分布对象。

另请参阅

bayes_mvs

附注

bayes_mvs(data) 返回的值等同于 tuple((x.mean(), x.interval(0.90)) for x in mvsdist(data))

换句话说,在从该函数返回的三个分布对象上调用 <dist>.mean()<dist>.interval(0.90) 将得到与从 bayes_mvs 返回相同的结果。

数组 API 标准支持

mvsdist 对 NumPy 之外的 Python Array API Standard 兼容后端具有实验性支持。请考虑通过设置环境变量 SCIPY_ARRAY_API=1 并提供 CuPy、PyTorch、JAX 或 Dask 数组作为数组参数来测试这些功能。支持以下后端和设备(或其他功能)的组合。

CPU

GPU

NumPy

不适用

CuPy

不适用

PyTorch

JAX

Dask

不适用

有关更多信息,请参阅 对数组 API 标准的支持

参考文献

T.E. Oliphant,“从数据中估计均值、方差和标准差的贝叶斯视角”,https://scholarsarchive.byu.edu/facpub/278,2006。

示例

>>> from scipy import stats
>>> data = [6, 9, 12, 7, 8, 8, 13]
>>> mean, var, std = stats.mvsdist(data)

现在我们有了“均值”、“方差”和“标准差”的冻结分布对象,我们可以检查它们

>>> mean.mean()
9.0
>>> mean.interval(0.95)
(6.6120585482655692, 11.387941451734431)
>>> mean.std()
1.1952286093343936