教育统计学
对应:培养方案 专业基础课 · 学期 5 · 2 学分 · 32 学时(22 课堂 + 10 实践)
这份笔记怎么用:每节都有能跑的代码,你可以自己改数据、重跑、看结果变不变。
数学模块讲理论,这份讲怎么用。
末尾有练习答案和出处索引。
1 导论:这门课在研究什么(先读这个)
1.1 先说清楚它不是什么
我猜你看到"统计学"三个字的第一反应是:完了,又是数学。
这个反应很正常,但它是这门课最大的误会。先把四件事说破:
| 常见误解 | 它其实是什么 |
|---|---|
| "教育统计学是数学课,要会推公式" | 它是一门"读表格、下判断"的课。公式基本由软件算,你要负责的是:看懂这个数在说什么、该不该信它。 |
| "统计就是算平均数" | 算平均只是第一层(描述统计)。真正的重头戏是推断统计,"我只测了 30 个人,凭什么敢说全体学生都这样?" |
| "p < 0.05 就说明研究成功了" | p 值只回答"数据在'没有效应'的前提下有多反常",完全不回答"效应有多大、值不值得"。把它当结论,是这门课要治的头号病。 |
| "反正有软件,原理不用懂" | 软件会给你一堆数,但不会拦着你犯低级错误。不懂原理的人,会把标准误当标准差、把"显著"当"重要"、把"相关"当"因果"。这三件事正是这门课反复拦你的地方。 |
为什么非得先破除这四条?因为错误的期待会让你用错误的方式读后面的内容。
假如你以为这是数学课,那你翻到 §2 看到 $SE = s/\sqrt{n}$,第一反应会是"这公式怎么来的、我会不会证",然后卡住、然后劝退。
但如果你知道这门课只要求你回答"这个数在告诉我什么",那这个公式对你只需要压缩成一句话:
根号 n 在分母上,所以样本量翻 4 倍,精度才翻 1 倍。
这句话你一辈子用得上,而它的推导你可以完全不碰。
方向搞对了,这门课的门槛直接低一半。下面几节我会不断重复这个原则:
先问"这个数在回答什么问题",再问"怎么算"。
1.2 这门课在整个专业里的位置
你培养方案里,凡是"要收数据、要下结论"的课,最后都会走到这里。看这张图:
┌───────────────────────────────────────────┐
│ 实验方法论 / 教育评价 / 语言教学测评 │ ← 谁要用它
│ (设计研究、测量变量、算信度效度) │
└───────────────────────────────────────────┘
↑ 都要靠它来"从数据下结论"
┌─────────────────────────────────────────────────────────────┐
│ 教育统计学 (你现在这门) │
│ 描述统计 → 推断统计 → 假设检验 → 效应量 → 相关回归 │
└─────────────────────────────────────────────────────────────┘
↑ 建立在它之上
┌───────────────────────────────────────────┐
│ 数理统计(数学模块) │ ← 谁支撑它
│ (概率、分布、为什么这些方法成立) │
└───────────────────────────────────────────┘
三种关系,说清楚:
- 谁支撑它:数学模块负责证明"为什么 t 检验长这样"。这门课不重复那些证明,直接拿结论来用。
- 它和谁分工:实验方法论课程管"怎么收数据"(实验设计、样本量、功效),这门课管"收来之后怎么读",统计功效是两门课的交界处。而 教育评价 管"变量怎么测"(信度、效度):测不准的东西,统计算得再漂亮也是垃圾进、垃圾出。
- 谁依赖它:上面那批课全都靠它。你在 教育评价 里算 ICC、在 语言教学测评与应用 里跑另一段代码,用的就是这里学的方法。
所以它不是一门孤立的工具课,它处在你整个"实证研究能力"的中段。
1.3 这门课真正要教你的能力
最要紧的是两条能力:
① 看一个研究结果时,知道该盯哪个数。
别人给你一张表,你不会被满屏数字淹没,你会先找均值还是中位数、标准差还是标准误、p 值多大、效应量多大,然后才下判断。② 学会"不被统计数字骗"。
一个说法挂着"研究表明""显著提升",你能条件反射地追问:样本多大?效应多大?比较了几次?是相关还是因果?
这两条能力不是"培养思维"这种空话,它们对应 §7 的方法选择表和 §8 的误用清单,而 §8 那张表本身就是这门课的一半价值。
1.4 这份笔记的组织逻辑 / 怎么读
后面九节里,真正需要你"当场搞懂"的只有五个概念,
其余的全部可以当成手册,用的时候再回来查。排序如下:
必须先搞懂的(读的时候要停下来想):
1. 标准差 vs 标准误 → §2 (零基础最容易混的两个词)
2. p 值到底是什么意思 → §3 (不是"效应为真的概率")
3. 显著 ≠ 重要 → §4 (所以要报告效应量)
4. 相关 ≠ 因果 → §5 (最贵的一类错误)
5. 多重比较会让假阳性膨胀 → §6 (做 3 次检验,5% 变 14.3%)
可以当手册查的(先扫一眼,用到再翻):
· 均值和中位数怎么选 → §1
· 七种情境该用哪种检验 → §7
· 参数 vs 非参数 → §7
· 八种常见误用 → §8
每一节都按同一个套路展开:
先讲这个问题为什么重要,再讲怎么算/怎么看,然后是边界和坑,最后回答"这跟你有什么关系"。
中间那段代码你不需要背,它的作用是让你相信这些数字是真的算出来的,你可以自己改了重跑。
说句实话:
这门课真正吃力的地方不在计算,在措辞。
你以后最常犯的错,是"p 值小就说效应大"这类说法上的错,而不是算错 t 值。
而措辞是可以靠反复练习纠正的。§9 的七道题,问的几乎全是措辞。再实在一点:你不需要、也来不及在这门课里"补完数学"。
高数 2 学分够不够用?够。因为这里用到的"数学"其实只有三样东西:
会看分数(比值、百分比)、根号(知道 $\sqrt{n}$ 越大值越小)和坐标图(知道斜率和形状)。
其余全是判断和措辞。把这门课当成"学会看懂别人的研究表格",
而不是"重学一遍数学",你会轻松得多。
2 这门课的核心
教育统计学 = 用数据回答教育问题的方法。
这句话里最关键的词是"回答教育问题"。统计本身不生产知识,
它只是一套让你在"数据有噪声"的情况下,还敢不敢下结论的规则。
和相邻内容的分工:
数学模块(数理统计) → 理论:为什么这些方法成立
教育统计学(这门) → 应用:教育研究里怎么用
[实验方法论] → 设计:怎么收集数据
[教育评价] → 测量:变量怎么测
这四块合起来,就是你做实证研究的完整能力。
缺任何一块都会出事:光有统计不会设计,你会收一堆回答不了问题的数据;
光有设计不懂统计,你会收完数据才发现不知道拿它怎么办。
3 描述统计:先把数据看清
在比较任何两组人之前,第一件事永远是"把数据本身看清楚"。
下面这段代码造了一份模拟数据:两种教学方法(讲授、讨论),各 30 人,期末成绩。
import numpy as np
import pandas as pd
# 造一份模拟的班级数据:两种教学方法,各 30 人
rng = np.random.default_rng(42)
n = 60
df = pd.DataFrame({
"教学方法": ["讲授"] * 30 + ["讨论"] * 30,
"成绩": np.concatenate([rng.normal(72, 10, 30), rng.normal(78, 10, 30)]).round(1),
})
print(df.groupby("教学方法")["成绩"].agg(["count", "mean", "std"]).round(2))
实跑输出:
count mean std
教学方法
讨论 30 79.13 8.05
讲授 30 72.17 7.77
这张表怎么读:count 是人数,mean 是均值,std 是标准差。
一眼看去,讨论组均值 79.13,讲授组 72.17,讨论组高了大约 7 分。
但先别急着下结论。这个"高了 7 分"后面还要过好几道关(它到底是真差异,还是这批样本碰巧?→ §3)。
描述统计的作用,就是先把牌摊开,让你知道有什么、大概什么形状。
3.1 均值还是中位数?
| 指标 | 特点 |
|---|---|
| 均值 | 最常用,但受极端值影响大 |
| 中位数 | 稳健(不受极端值影响) |
为什么均值会被"带偏"?因为它把每个数都加进去除以个数。
一个离群的极端值,会把整个结果往它那边拽。
分数偏斜时用中位数。
一份有 1 个满分和 1 个零分的班级,均值会被拉偏,中位数不受影响。一个更贴近生活的例子:说"某公司平均工资 3 万",但老板拿 100 万、十个员工拿 5 千,
这个"平均"被一个人拽飞了。看收入、看反应时、看房价这类"少数极端值特别大"的数据,中位数才诚实。
3.2 ⚠️ 标准差有两个版本(容易踩坑)
标准差衡量的是"这组数据散得开不开"。但它有两个版本,差别只在分母:
| 分母 | 用在哪 | Python | |
|---|---|---|---|
| 总体标准差 | $n$ | 描述这组数据本身 | np.std 默认 |
| 样本标准差 | $n-1$ | 估计总体时(更常用) | pd.Series.std() 默认 |
同一个数据会得到不同结果。(→ 代码速查表 里记了这条。)
为什么要有 $n-1$ 这个版本?直觉上:你手上是样本,想用它估计总体的离散程度。
样本总是比总体"更集中"一点(极端的个体不容易被抽到),
除以 $n-1$(比 $n$ 小)能把结果"放大"回去,估得更准。
你不需要推导它,只要记住:描述这批人用 $n$,估计总体用 $n-1$,而 Python 的两个默认值刚好各自对应。
4 ⭐ 推断统计:从样本到总体
核心问题:我测了 30 个人,能说"所有学生"吗?
这是整门课的分水岭。描述统计只描述你手上的这批人;
推断统计要从这批人跳到"更大的总体",而跳的时候,你必须交代"这一跳有多不稳"。
标准误,就是为这个"有多不稳"服务的。
4.1 标准误:和标准差完全不同
sd = df["成绩"].std()
se = sd / np.sqrt(len(df))
print(f"标准差 = {sd:.2f} (描述这批人)")
print(f"标准误 = {se:.2f} (描述均值这个估计量有多不稳)")
print(f"比值 = {sd/se:.2f} ≈ sqrt({len(df)})")
实跑输出:
标准差 = 8.59 (描述这批人)
标准误 = 1.11 (描述均值这个估计量有多不稳)
比值 = 7.75 ≈ sqrt(60)
两个东西的区别:
- 标准差:描述个体之间的差异
- 标准误:描述"样本均值"这个估计量的波动(换一批样本,均值会变多少)公式 $SE = s/\sqrt{n}$ 里那个 $\sqrt{n}$ 的后果:
样本量翻 4 倍,精度才提高 1 倍。
这就是"提高精度很贵"。标准差是"学生之间的差距",标准误是"我这次测量的靠谱程度"。
标准差大,说明这个班成绩参差不齐;标准误大,说明"我说这个班平均 72 分"这句话本身不太可靠。
同一个数据,标准误一定比标准差小得多(这里是 8.59 对 1.11,差了 $\sqrt{60} \approx 7.75$ 倍),
所以有人拿标准误冒充标准差来"显得数据很稳定",是典型的图表骗术。
注意那个"翻 4 倍才换 1 倍"。它解释了一个很现实的现象:
想让研究更精确,靠加样本是极其昂贵的。
想把标准误减半,样本量得翻两番(×4);想减到 1/3,得 ×9。
这就是为什么做研究要提前算功效、而不是"多收点人总没错"。(→ 实验方法论课程)
5 ⭐ 假设检验与 p 值
回到 §1 那个问题:讨论组比讲授组高 7 分,这是真的差异,还是碰巧?
做法是独立样本 t 检验:它比较两组均值,同时考虑两组的离散程度和样本量。
from scipy import stats
g1 = df[df["教学方法"] == "讲授"]["成绩"]
g2 = df[df["教学方法"] == "讨论"]["成绩"]
t, p = stats.ttest_ind(g1, g2)
print(f"t = {t:.3f}, p = {p:.4f}")
实跑输出:
t = -3.409, p = 0.0012
怎么读这两个数:t 是"差异相对于噪声有多大"(负号只是因为讲授组在前);
真正要盯的是 p = 0.0012,它远小于 0.05,所以我们说这个差异统计显著。
但"显著"只是第一关(它有多大、值不值得,要到 §4 才回答)。
5.1 p 值的准确定义(最容易被误用)
p 值 = "如果零假设为真,观测到当前这么极端(或更极端)数据的概率"。
它不是"效应为真的概率"。
先解释两个词:
零假设(H₀) = "两组没有差别"这个默认前提(检验就是假设它成立,看数据打不打脸);
"这么极端或更极端" = 不只"刚好等于观测到的差异",还要把比它更夸张的所有情况都算进来。
| 常见误解 | 实际 |
|---|---|
| "p = 0.03,说明有 97% 概率有效应" | ❌ p 是在 H₀ 下数据的概率 |
| "p > 0.05,说明没有效应" | ❌ 只是证据不足(可能是样本太小) |
| "p 越小,效应越大" | ❌ p 受样本量影响极大 |
最后一条:
样本量足够大时,几乎任何微小差异都会"显著"。
所以现在都要求报告「效应量」。p 值到底在问什么?打个比方:
你怀疑一枚硬币被做了手脚。默认它公平(H₀),然后抛 10 次,9 次正面。
p 值问的是:"假如硬币是公平的,抛 10 次出现 9 次正面(或更极端)的概率有多大?"
它不问"这枚硬币不公平的概率有多大"。那是两回事,混淆它们就是这道题最常见的错。所以 p 值说话的对象永远是"数据",不是"假设"。它只能说"数据很反常",
不能说"效应为真的可能性是百分之多少"。
6 ⭐ 效应量:和样本量无关
p 值告诉你"有没有",效应量告诉你"有多大"。这是两个独立的问题。
n1, n2 = len(g1), len(g2)
sp = np.sqrt(((n1-1)*g1.var(ddof=1) + (n2-1)*g2.var(ddof=1)) / (n1+n2-2))
d = (g2.mean() - g1.mean()) / sp
print(f"Cohen's d = {d:.3f}")
实跑输出:
Cohen's d = 0.880
解读: d=0.88 → 大效应
这段代码在干什么:它先算出一个"共同的标准差"(把两组的离散程度合并成一个基准 sp),
再用"两组均值之差"除以这个基准。
所以 d 的本质是"差异相当于几个标准差",它约掉了样本量,这正是它和 p 值最大的不同。
Cohen 的经验标准(Cohen, 1988):
| d | 大小 |
|---|---|
| 0.2 | 小 |
| 0.5 | 中 |
| 0.8 | 大 |
这里 d = 0.880,刚过大效应的线,所以这个教学法的差异不只是显著,而且不小。
为什么必须报告效应量:
"显著"和"重要"是两件事。一个大样本研究发现"某种教学法把成绩提高 0.1 分且 p<0.001",
显著,但没用。报告效应量,才能回答"值不值得"。
"显著 ≠ 重要",再给一个生活类比:
比如某种牙膏比另一种多清洁 0.001% 的牙菌斑,p < 0.001。
统计上它千真万确"显著"(样本够大就行),
但你不会因此多花 20 块钱,因为效应小到没有实际意义。
"值不值得"是效应量回答的,"是不是碰巧"才是 p 值回答的。Cohen 的 0.2/0.5/0.8 是「经验标准」,不是自然定律。
具体领域该用什么标准,要看领域惯例。引用时注明是 Cohen 的标准。
为什么说它是"经验"而不是"定律"?因为它是 Cohen 当年在行为科学里摸索出来的惯例,
0.8 这个数没有任何数学上的神圣性。
在教育、心理领域大家默认用它,但换个领域(比如物理或流行病学),这个门槛完全可能不一样。
所以引用它时,要说"按 Cohen 的标准这是大效应",不能说"0.8 就是大效应"。
7 相关与回归
前面的检验回答"两组有没有差别",相关和回归回答"两个变量怎么一起变"。
学习时长 = (df["成绩"] / 8 + rng.normal(0, 0.8, n)).round(1)
r, pr = stats.pearsonr(学习时长, df["成绩"])
slope, intercept, rval, pval, stderr = stats.linregress(学习时长, df["成绩"])
print(f"相关 r = {r:.3f}(p = {pr:.2e})")
print(f"回归: 成绩 = {intercept:.2f} + {slope:.2f} × 学习时长")
print(f"R² = {rval**2:.3f}")
实跑输出:
相关 r = 0.857(p = 2.22e-18)
回归: 成绩 = 17.83 + 6.21 × 学习时长
R² = 0.735(解释了 73.5% 的方差)
一段代码排错记录:
这段代码原先第 1 行写的是裸名成绩,直接复制粘贴会报
NameError: name '成绩' is not defined。因为成绩是数据框(df)里的一列,
必须写成df["成绩"]才能取到。
现已修正,上面的实跑输出就是用修好的代码跑出来的(数值一字未变)。这个坑本身是个好教材:
df["成绩"]和成绩在人看来几乎一样,
在 Python 看来则是"取一列"和"找一个不存在的变量",
你以后自己写代码,报NameError就先检查这个。
(原文件这里写错了,是改写期间实跑核验时抓出来的。)
上面那组实跑输出,是用df["成绩"]跑出来的,数值完全一致。
我只改了这个变量名,没动任何数字。你照着df["成绩"]跑就能复现。
读法:
| 量 | 含义 |
|---|---|
| r | 线性关系的强度和方向(−1 到 1) |
| slope | 学习时长每多 1 小时,成绩变化多少分 |
| R² | 解释了多少方差(0.735 = 73.5%) |
逐项翻译:
r = 0.857 说明学习和成绩强正相关;p = 2.22e-18 极小,说明这个相关不可能是碰巧;
回归式 成绩 = 17.83 + 6.21 × 学习时长 的意思是:学习时长每多 1 小时,成绩平均多 6.21 分(这是 slope 的含义);
R² = 0.735 表示学习时长能解释成绩波动的 73.5%,剩下 26.5% 是别的原因(智力、基础、运气……)。
两条限制:
① 相关不等于因果(→ 普通心理学)
② r 只度量「线性」关系,完全对称的 U 型关系可能 r ≈ 0。两条限制各举个例子:
①相关≠因果:"冰淇淋销量"和"溺水人数"高度相关。
天气热同时抬高了这两者,跟冰淇淋没关系。这类"背后还有第三个变量"的情况,是相关性研究最容易骗人的地方。
②只看线性会漏关系:假设"压力适中时成绩最好,压力过低过高都差",
这明明是极强的 U 型关系,但一算 r 却接近 0(因为左右对称、互相抵消)。
所以 r ≈ 0 只能说"没有线性关系",不能说"没有关系"。
8 ⭐ 多重比较的陷阱
这一条最容易被忽略,后果也最严重。
alpha = 0.05
print(f"单次检验的假阳性率: {alpha}")
print(f"做 3 次,至少一次假阳性: {1-(1-alpha)**3:.3f}")
实跑输出:
单次检验的假阳性率: 0.05
做 3 次,至少一次假阳性: 0.143
这个 0.143 是怎么来的:每次检验不出错的概率是 0.95;
三次都不出错是 $0.95^3$;至少错一次就是 $1 - 0.95^3 = 0.143$。
每多做一次比较,就多押一次注,翻车的概率自然涨。
这就是为什么"三组两两比较"不能做三次 t 检验:
假阳性率从 5% 涨到 14.3%。正确做法:
- 三组及以上 → 先做 ANOVA,再做事后检验(带校正)
- 或者用 Bonferroni 校正(把 α 除以比较次数)这在 教育评价 里也讲过,因为它是评价研究的高频错误。
两种校正怎么选:Bonferroni 校正最直接,把 α 除以比较次数(做 3 次就砍到 0.0167),
简单、保守,代价是可能把真的效应也误杀(太严了)。
Benjamini-Hochberg(出处索引里有原文)是另一条路:它不要求"一次假阳性都不许有",
只要求"在所有被宣布的发现里,假阳性的比例控制在一个水平以内",更宽松,所以在探索性研究里更常用。
你现在只要记住:意识到"要校正"这件事本身,就已经赢过大多数初学者了。
一次假阳性,意味着你宣布了一个根本不存在的结果。
如果研究者在十种教学方法里试来试去、只把"显著"的那次写进论文,
读者看到的"发现",可能只是运气。这不是道德问题,是统计结构本身的陷阱。
9 常用检验方法选择表
前面讲了原理,这一节是"实操手册"。遇到问题时先来这里对号入座:
| 想做什么 | 用什么 |
|---|---|
| 一组均值和某值比 | 单样本 t 检验 |
| 两组独立样本比 | 独立样本 t 检验 |
| 同一批人前后比 | 配对 t 检验 |
| 三组及以上比 | ANOVA |
| 两个分类变量关联 | 卡方检验 |
| 两个连续变量关联 | 相关(Pearson / Spearman) |
| 预测一个连续变量 | 回归 |
怎么用这张表:先问自己三个问题。
①"我要比的是均值,还是关联?"②"有几组/几个人群?"③"变量是连续的还是分类的?"
答案就能定位到某一行。
举个完整的走法:你想知道"三个班的英语成绩有没有差别",
问题①是比均值,②是三组,于是答案是 ANOVA,而且绝不能拆成三次 t 检验(→ §6 的陷阱)。
再比如"性别和是否选理科有没有关系",①是问关联,③两个都是分类变量,于是答案是卡方检验。
注意"同一批人前后比"要用配对 t 检验:因为它知道前后是同一批人,
把"人跟人之间的差异"先扣掉了,所以比独立样本 t 检验更灵敏、更容易测出真实变化。
这个"同一批人"的细节很容易被忽略,但它直接决定了你该用哪一行。
9.1 参数检验 vs 非参数检验
| 参数检验 | 非参数检验 | |
|---|---|---|
| 假设 | 正态、方差齐 | 不需要 |
| 例子 | t 检验、ANOVA | Mann-Whitney、Wilcoxon、Kruskal-Wallis |
| 代价 | — | 检验力低一些 |
什么时候用非参数:数据严重偏斜、等级数据、样本极小。
"参数"在这里指什么?指检验假设数据服从某个分布(通常是正态),
并用均值、方差这些"参数"来做计算。
代价那一栏要划重点:非参数是退一步的选择,不是更好的选择。
它不要求正态,代价是更不容易测出真实的差异(检验力低)。
所以数据能接受参数检验时,就别用非参数;只有当数据确实严重偏斜、或本身就是等级(如"非常同意/同意/…")、或样本极小,才退而求其次。
10 教育研究里的常见统计误用
这一节相当于临床病例集。读它的时候,把自己当成在给别人的研究挑错。
| 误用 | 后果 |
|---|---|
| 把 p 值当效应大小 | 夸大或低估发现 |
| 多重比较不校正 | 假阳性 |
| 只报告显著的(发表偏倚) | 文献整体失真 |
| 用 t 检验代替 ANOVA | 第一类错误膨胀 |
| 忽略效应量 | 报告"显著"但无实际意义 |
| 相关当因果 | 错误的政策建议 |
| HARKing(看到结果再提假设) | 学术不端 |
| 样本量不做功效分析 | 测不出真效应(→ 实验方法论课程) |
挑三个最常考的展开一下:
"只报告显著的(发表偏倚)":如果 20 个团队都做了同一个实验,只有 1 个"显著",
而只有这一个被发表出来,那么文献里看到的"有效"就是假象,因为失败的 19 个都消失了。
"用 t 检验代替 ANOVA"就是 §6 那个坑,会让"第一类错误"(假阳性)膨胀。
"HARKing"的全称是"看到结果后再提假设",本质是先射箭再画靶子:数据已经出来了,再回头编一个"我早就想验证"的故事,这已经把假设检验的逻辑彻底破坏,属于学术不端。
"样本量不做功效分析"里的功效,指的是"真有差异时,你这个研究有多大概率测出来"。
不做功效分析就开跑,最典型的后果是样本太小、真有效应也测不出,
然后你得出"没有差别"的结论,但这其实是"你没本事看出来",不是"真的没有"(→ 实验方法论课程)。
学会统计,一半是学会"不被统计骗"。
11 练习(带答案)
1. 均值和中位数,什么时候该用中位数?举一个教育场景。
2. 标准差和标准误有什么不同?
3. 样本量从 25 增加到 100(4 倍),标准误变小多少倍?
4. 用准确的措辞说清 p 值的定义。"p = 0.03 说明有 97% 概率有效应"错在哪?
5. 一个研究:n = 5000,p < 0.001,d = 0.05。这个结果重要吗?为什么?
6. 三组比较为什么不能做三次 t 检验?假阳性率会变成多少?
7. r = 0 说明两个变量没有关系吗?举个反例。
11.1 参考答案
1. 分布偏斜、有极端值时用中位数。
教育场景:班级收入/家庭经济数据(有极富或极贫)、反应时数据(右偏,有少数特别慢的试次)。
2. 标准差描述个体之间的差异("这个班的成绩离散程度");
标准误描述样本均值这个估计量的波动("我这次测的均值有多不可靠")。
3. 变小 2 倍(因为 $SE \propto 1/\sqrt{n}$,$\sqrt{4} = 2$)。
注意:样本量翻 4 倍,精度才翻 1 倍。
4. p 值 = "如果零假设为真,观测到当前这么极端(或更极端)数据的概率"。
"97% 概率有效应"错在:把"在 H₀ 下数据的概率"偷换成了"效应为真的概率"。
p 值完全没有告诉你 P(效应为真),那是贝叶斯后验概率要回答的问题。
5. 不重要。
因为 d = 0.05 是极小的效应,虽然 p < 0.001(因为样本量 5000 极大),
但效应本身几乎无实际意义(成绩可能就提高了 0.0 几分)。
这个例子说明"显著 ≠ 重要"。
6. 因为假阳性率会累加:从 5% 涨到 14.3%($1-0.95^3 = 0.143$)。
三组应该先做 ANOVA,再做事后检验并校正。
7. 不说明没关系。
r 只度量线性关系。反例:$y = x^2$,$x$ 从 −5 到 5,
y 完全由 x 决定,但 r ≈ 0(因为关系是对称的 U 型,不是线性的)。
12 出处索引
| 出处 | 用在哪 |
|---|---|
| Cohen, J. (1988). Statistical Power Analysis for the Behavioral Sciences(2nd ed.) (Routledge;DOI) | §4 效应量标准 |
| Cohen, J. (1992). A power primer. Psychological Bulletin, 112(1), 155–159 · DOI | §4 效应量速查 |
| Fisher, R. A. (1925). Statistical Methods for Research Workers (Oliver & Boyd, Edinburgh) | §3 假设检验框架 |
| Benjamini, Y., & Hochberg, Y. (1995). Controlling the false discovery rate. JRSS-B, 57(1), 289–300 · DOI | §6 多重比较校正 |
| OpenIntro Statistics(免费开源教材) · openintro.org | §1–§7 的通用框架 |
Think Stats 2e(已在 编程/教材/ · greenteapress.com) |
用 Python 学统计 |
| PISA / TIMSS 公开数据 · PISA 数据、TIMSS | §1 真实教育数据练手 |
怎么看这张表:带 [DOI] 的条目可直接点开核对原文;书/古籍/语料库/官方文件没有 DOI,按题名 + 出版社(或机构)查找。
本页代码的来源说明:§1–§6 的所有代码都是我自己写的并实跑过,
输出就贴在讲义里,你可以改数据重跑核对。
标「待核」的:§9 答案 1 里的教育场景举例(是我的补充,不是文献)。
Cohen 的 0.2/0.5/0.8 是经验标准,已在正文标注。