You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Scipy计算单个X值对应的Z-Score

用Scipy计算单个X值的Z-Score

要计算单个值的Z-Score,核心还是遵循Z分的公式:Z = (X - 数据集均值) / 数据集标准差。Scipy没有直接计算单个值Z分的函数,但可以先获取数据集的均值和标准差,再代入公式计算,步骤如下:

步骤1:导入Scipy模块

from scipy import stats

步骤2:定义数据集并计算均值、标准差

先拿到你用来计算Z分的数据集的均值和总体标准差(和你手动代码的计算逻辑一致,除以样本总数n):

data = [25, 37, 15, 36, 92, 28, 33, 40]
# 计算数据集均值
mean = stats.tmean(data)
# 计算总体标准差(ddof=0表示自由度为n,对应你手动代码里的(1/len(data))*summation)
std_dev = stats.tstd(data, ddof=0)

步骤3:计算单个X值的Z-Score

假设你要计算的单个值是x = 25,直接代入公式即可:

x = 25
z_score = (x - mean) / std_dev
print(z_score)  # 输出结果:-0.61219538,和stats.zscore(data)的第一个值完全一致

注意:样本标准差和总体标准差的区别

如果你需要用样本标准差(除以n-1),只需要把std_dev的计算改成stats.tstd(data, ddof=1),这时候计算出的Z分会和stats.zscore(data, ddof=1)的结果对应。


内容的提问来源于stack exchange,提问作者Vicktor Krum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 08:18:13