当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy mstats.zscore用法及代码示例


本文简要介绍 python 语言中 scipy.stats.mstats.zscore 的用法。

用法:

scipy.stats.mstats.zscore(a, axis=0, ddof=0, nan_policy='propagate')#

计算 z 分数。

计算样本中每个值相对于样本均值和标准差的 z 分数。

参数

a array_like

包含样本数据的类似对象的数组。

axis int 或无,可选

操作的轴。默认值为 0。如果没有,则计算整个数组 a。

ddof 整数,可选

计算标准偏差时的自由度校正。默认值为 0。

nan_policy {‘propagate’, ‘raise’, ‘omit’},可选

定义当输入包含 nan 时如何处理。 ‘propagate’ 返回 nan,‘raise’ 引发错误,‘omit’ 执行忽略 nan 值的计算。默认为‘propagate’。请注意,当值为 ‘omit’ 时,输入中的 nan 也会传播到输出,但它们不会影响为非 nan 值计算的 z-scores。

返回

zscore array_like

z-scores,按输入数组 a 的均值和标准差进行标准化。

注意

此函数保留 ndarray 子类,也适用于矩阵和掩码数组(它使用 asanyarray 而不是 asarray 作为参数)。

参考

[1]

“Standard score”,维基百科,https://en.wikipedia.org/wiki/Standard_score.

[2]

Huck, S. W.、Cross, T. L.、Clark, S. B,“克服关于 Z-scores 的误解”,教学统计,卷。 8,第 38-40 页,1986 年

例子

>>> import numpy as np
>>> a = np.array([ 0.7972,  0.0767,  0.4383,  0.7866,  0.8091,
...                0.1954,  0.6307,  0.6599,  0.1065,  0.0508])
>>> from scipy import stats
>>> stats.zscore(a)
array([ 1.1273, -1.247 , -0.0552,  1.0923,  1.1664, -0.8559,  0.5786,
        0.6748, -1.1488, -1.3324])

沿指定轴计算,使用 n-1 自由度 (ddof=1) 计算标准偏差:

>>> b = np.array([[ 0.3148,  0.0478,  0.6243,  0.4608],
...               [ 0.7149,  0.0775,  0.6072,  0.9656],
...               [ 0.6341,  0.1403,  0.9759,  0.4064],
...               [ 0.5918,  0.6948,  0.904 ,  0.3721],
...               [ 0.0921,  0.2481,  0.1188,  0.1366]])
>>> stats.zscore(b, axis=1, ddof=1)
array([[-0.19264823, -1.28415119,  1.07259584,  0.40420358],
       [ 0.33048416, -1.37380874,  0.04251374,  1.00081084],
       [ 0.26796377, -1.12598418,  1.23283094, -0.37481053],
       [-0.22095197,  0.24468594,  1.19042819, -1.21416216],
       [-0.82780366,  1.4457416 , -0.43867764, -0.1792603 ]])

一个例子nan_policy='省略'

>>> x = np.array([[25.11, 30.10, np.nan, 32.02, 43.15],
...               [14.95, 16.06, 121.25, 94.35, 29.81]])
>>> stats.zscore(x, axis=1, nan_policy='omit')
array([[-1.13490897, -0.37830299,         nan, -0.08718406,  1.60039602],
       [-0.91611681, -0.89090508,  1.4983032 ,  0.88731639, -0.5785977 ]])

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.stats.mstats.zscore。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。