为什么随便翻数据总能翻出"规律"——用诚实数据模拟,量化"假发现"的产生速度。
单次检验的显著性水平 α = 0.05 意味着:即使零假设为真,也有 5% 的概率被判为"显著"。当你对同一份数据做 m 次检验,至少出现一次假阳性的概率是:
两种标准的校正方法:
我在完全随机生成的模拟数据(每期都是标准的 6/33 + 1/16 均匀抽样)上,把方法 05 的那 15 项检验跑 600 轮,统计每轮出现多少项"显著"(未校正)。
这是本报告最关键的一张图。在完全没有规律的数据上,一半的模拟数据都会"发现"至少一个显著结果;平均每轮 0.76 个。也就是说:一个诚实的分析师在一份诚实的随机数据上做 15 项检验,如果不做校正,必然会报告出 1 个左右的"发现"。
德国 6/49 彩票在 26,022 期里,13 号只开出 471 次,而等概率下期望 531 次——少了 60 次。这个差距大到足以让人相信"13 号不吉利"。
Hassler & Hösli (2022) 专门写了这篇文章来拆解它:把 49 个号码全部看一遍(数据窥探),最大的那个偏差本来就应该有这么大。文章标题直接点破——"Unlucky Number 13? Manipulating Evidence Subject to Snooping"(倒霉的 13 号?受数据窥探操控的证据)。
双色球里最"邪门"的是 33 号(581 次,比期望少 59 次,z = -2.59)。这个偏差和德国 13 号几乎一样大——但如果我们老老实实模拟"33 个号码里挑最大偏差"的分布,95% 分位是 3.18,比实测的 2.59 还要大。
结论:双色球的"倒霉号码"比随机数据里的典型"倒霉号码"还要温和。如果先看到 33 号偏少、再去算它的显著性,你一定会"发现"点什么;但正确的算法是先声明假设、再校正检验次数。
Streiner 系统梳理了多重比较的各类场景(多个结局、多次查看数据、事后分析),并说明 Bonferroni、Holm、Hochberg、Šidák、FDR 等方法各自的适用条件。文章特别点出"data dredging"和"P-hacking"——在数据里反复翻找,必然翻出东西。
多重比较不是一个技术细节,而是区分"真发现"和"看着像发现"的唯一标准。本报告方法 05 中 15 项检验最强的一项 p = 0.0122,Bonferroni 阈值 0.0033,被淘汰。而模拟显示,在诚实数据上跑同样 15 项检验,50.0% 的情况下会出现至少一项"显著"——所以这个被淘汰的结果,其存在本身就是预期之内的。