=STDEV.S(B2:B9) 把 B2:B9 中的值当作样本,返回它们的标准差;=STDEV.P(B2:B9) 则把它们当作整个总体。标准差表示各个值通常离平均值有多远:标准差小,说明这些值彼此很接近。
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Student | Score | Measure | Result | |
| 2 | Ana | 72 | STDEV.S | 12.82853961 | |
| 3 | Ben | 84 | STDEV.P | 12 | |
| 4 | Cleo | 84 | Average | 90 | |
| 5 | Dan | 84 | |||
| 6 | Eve | 90 | |||
| 7 | Finn | 90 | |||
| 8 | Gia | 102 | |||
| 9 | Hal | 114 |
成绩的平均值是 90。STDEV.P 正好是 12,STDEV.S 约为 12.83。把 Hal 的成绩改成 90,两者都会大幅下降:一个远离其他值的数会让标准差变化很大。
STDEV.S 和 STDEV.P:该用哪个
两者只有一步不同。STDEV.P 用差值平方和除以值的个数 n,STDEV.S 则除以 n 减 1,结果会稍大一些。原因是:样本的离散程度是围绕样本自己的平均值来衡量的,而样本平均值比真实平均值更靠近样本中的值,所以除以 n 会低估整体的离散程度。
- STDEV.P(总体):区域包含你想描述的每一个值。比如问题是关于这个班级时,这个班全部 8 名学生的成绩。
- STDEV.S(样本):区域只是更大整体的一部分。比如从 600 人的学校中挑出 8 名学生,用来估计全校的离散程度。
拿不准时就用 STDEV.S。电子表格中的大多数数据都是样本,统计工具(t 检验、置信区间)也要求使用样本版本。有几百个值时,两个结果几乎相同;只有 8 个值时,差距约为 7%。
旧函数 STDEV 和 STDEVP 的结果与 STDEV.S 和 STDEV.P 相同,在所有 Excel 版本中都能用。STDEVA 和 STDEVPA 还会把文本算作 0、把 TRUE 算作 1,这通常不是你想要的。
Excel 怎样一步步计算标准差
下面这张表手动完成了 STDEV.S 一次调用所做的事:每个值减去平均值,把差值平方,加起来,除以 n 减 1,再开平方根。
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Value | Difference | Squared | Result | ||
| 2 | 4 | -2 | 4 | Sum of squares | 34 | |
| 3 | 8 | 2 | 4 | n | 6 | |
| 4 | 6 | 0 | 0 | Variance (sample) | 6.8 | |
| 5 | 5 | -1 | 1 | Std dev (sample) | 2.607680962 | |
| 6 | 3 | -3 | 9 | STDEV.S | 2.607680962 | |
| 7 | 10 | 4 | 16 |
平方和是 34,样本方差是 6.8,它的平方根(约 2.61)与 F6 中的 STDEV.S 一致。把 F4 改成 =F2/F3,得到的就是总体方差;它的平方根就是 STDEV.P 返回的值。
方差:VAR.S 和 VAR.P
方差就是开平方根之前的标准差:对上面的数据,=VAR.S(A2:A7) 得到 6.8,=VAR.P(A2:A7) 则除以 n 而不是 n 减 1。方差的单位是平方(分数的平方、美元的平方),所以在报告中,标准差更容易理解。VAR 和 VARP 是旧名称。
平均值加减一个标准差
报告离散程度的常用方式是“平均值 ± 标准差”,比如 90 ± 12.8。这个范围的两端都是简单的公式,再用一条条件格式规则就能标出范围之外的值。
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Student | Score | Measure | Value | |
| 2 | Ana | 72 | Mean | 90.0 | |
| 3 | Ben | 84 | SD | 12.8 | |
| 4 | Cleo | 84 | Low | 77.2 | |
| 5 | Dan | 84 | High | 102.8 | |
| 6 | Eve | 90 | |||
| 7 | Finn | 90 | |||
| 8 | Gia | 102 | |||
| 9 | Hal | 114 |
这条规则突出显示了 Ana 和 Hal,他们的成绩在约 77.2 至 102.8 的范围之外。在正态分布的数据中,约三分之二的值落在平均值上下一个标准差以内,约 95% 落在两个标准差以内。要把单元格中的文本显示为“90.0 ± 12.8”,使用 =TEXT(E2,"0.0")&" ± "&TEXT(E3,"0.0")。
带条件的标准差
Excel 没有 STDEVIF 函数。在 STDEV.S 中放一个 IF:地区匹配时 IF 返回成绩,否则返回 FALSE,而 STDEV.S 会跳过 FALSE 值。
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Region | Sales | Region | STDEV.S | |
| 2 | North | 120 | North | 25.61737691 | |
| 3 | South | 95 | South | 3.872983346 | |
| 4 | North | 150 | |||
| 5 | South | 101 | |||
| 6 | North | 90 | |||
| 7 | South | 98 | |||
| 8 | North | 135 | |||
| 9 | South | 104 |
North 的销售额波动比 South 大得多。在 Excel 365 和 2021 中,这个公式直接输入就能用。在 Excel 2019 及更早的版本中,要按 Ctrl+Shift+Enter(Mac 上按 Cmd+Shift+Enter)完成输入,否则会返回错误的结果或 #VALUE!。在 Excel 365 中也可以写成 =STDEV.S(FILTER(B2:B9,A2:A9=D2))。
试一试:送货时间的离散程度
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Order | Days | Std dev | ||
| 2 | A1 | 3 | |||
| 3 | A2 | 5 | |||
| 4 | A3 | 4 | |||
| 5 | A4 | 9 | |||
| 6 | A5 | 3 | |||
| 7 | A6 | 4 | |||
| 8 | A7 | 6 |
轮到你了: B2:B8 中的订单是所有订单的一个样本。在 E2 中计算它们的标准差。
提示:样本对应以 .S 结尾的函数。
常见错误:区域中包含合计行
像 B2:B10 这样的区域如果把列底部的合计或平均值也包含进来,就会把这个汇总值当作又一个数据点,算出的标准差会大得离谱。只选择数据行,或者像本页的表格那样把汇总放在另一列。区域中的空单元格和文本会被忽略,但 0 是一个值,会被计入:把缺失的成绩输入成 0,会和真实的 0 一样扩大离散程度。要检查用了多少个值,在结果旁边放一个 =COUNT(B2:B9)。
常见问题
Excel 中标准差的公式是什么?
样本用 =STDEV.S(B2:B9),完整的总体用 =STDEV.P(B2:B9)。两者都会忽略区域中的文本和空单元格。
该用 STDEV.S 还是 STDEV.P?
只有当区域包含你所描述群体的每一个成员时,才用 STDEV.P,比如一个团队的全部 8 个人。如果数据是用来描述更大整体的样本(部分客户、部分测试),就用 STDEV.S。值很多时两者很接近;值很少时 STDEV.S 会明显更大。
STDEV 和 STDEV.S 有什么区别?
结果没有区别。STDEV 和 STDEVP 是 2010 版之前的名称,为了兼容而保留;STDEV.S 和 STDEV.P 是现在的名称。Google 表格两套名称都能用。
Excel 中怎样计算方差?
样本用 =VAR.S(B2:B9),总体用 =VAR.P(B2:B9)。方差是标准差的平方,所以 =STDEV.S(B2:B9)^2 与 VAR.S 的结果相同。
Excel 中怎样计算标准误差?
Excel 没有计算均值标准误差的函数。用样本标准差除以个数的平方根:=STDEV.S(B2:B9)/SQRT(COUNT(B2:B9))。