为什么天气预报是一道数学题

天气预报通常会给出两样东西:一个温度和一个降雨概率。温度一目了然,概率却不那么好懂。它是说城市70%的地方会下雨?还是一天中70%的时间在下雨?都不是。它是一个概率,弄懂它正好可以练习考试中常见的概念:频率、对立事件、独立性,以及平均数、极差等统计量。

“降雨概率70%”到底衡量什么

最实用的理解是频率。设想预报模型在历史数据中找到许多与明天条件相似的日子:湿度相同、气压相同、同样有锋面逼近。如果这些日子里大约每100天有70天在该地点出现可测量的降雨,预报就给出70%。

因此,70%的日子没下雨并不代表预报“错了”。如果预报校准良好,这样的日子里本来就有十分之三不会下雨。评价一个预报只能看很多天,不能只看一天。

用集合语言表示,设 CC 为事件“明天下雨”,预报的意思是 P(C)=0.7P(C) = 0.7

70%70 / 100下雨的日子
在100个条件相似的日子里,约70天下雨、30天不下雨:这就是“70%降雨概率”的含义。

对立事件

下雨的反面是不下雨。两者不能同时发生,又必有一个发生,所以它们的概率之和为1。

P(C)=1P(C)P(\overline{C}) = 1 - P(C)
对立事件公式:不下雨的概率等于1减去下雨的概率。

降雨概率为70%时,不下雨的概率是 1 − 0.7 = 0.3,即30%。看似简单,但对立事件正是解决下一个问题的关键工具。

出行几天,至少有一天下雨

假设你要出行三天,(假设的)预报为:周五降雨概率30%,周六40%,周日20%。这三天中至少有一天下雨的概率是多少?

典型错误是直接相加:30% + 40% + 20% = 90%。加法只适用于互斥事件,而这里周五和周六可能都下雨。如果各天概率更大,相加甚至会超过100%,这显然不可能。

正确做法是考虑“至少一天下雨”的对立事件,即“一天都不下雨”。

P(至少一天)=1P(一天都没有)P(\text{至少一天}) = 1 - P(\text{一天都没有})
“至少一个”问题的对立事件公式。
例题:三天的预报
  1. 10.3=0.710.4=0.610.2=0.8\displaystyle 1-0.3=0.7 \quad 1-0.4=0.6 \quad 1-0.2=0.8 用对立事件写出每天不下雨的概率。
  2. P(一天都没有)=0.7×0.6×0.8=0.336\displaystyle P(\text{一天都没有}) = 0.7 \times 0.6 \times 0.8 = 0.336 假设各天相互独立,三天都不下雨的概率等于它们的乘积。
  3. P(至少一天)=10.336=0.664\displaystyle P(\text{至少一天}) = 1 - 0.336 = 0.664 再用对立事件求至少一天下雨的概率。
  4. 检验:结果66.4%大于单日最大概率40%(理应如此),且小于100%。直接相加得到的90%相差很远。
90%直接相加66.4%至少一天下雨33.6%一天都不下雨
直接相加得到90%,但三天中至少一天下雨的真实概率是66.4%,即“一天都不下雨”33.6%的对立事件。

一个常用特例:若 nn 天相互独立且每天降雨概率都是 pp,则至少一天下雨的概率为 1(1p)n1-(1-p)^n。每天20%、连续五天,得 1 − 0.8⁵ ≈ 0.672,约67%。五个“不太会下雨”的日子合起来,遇雨的可能性其实相当高。

P(至少一天)=1(1p)nP(\text{至少一天}) = 1 - (1-p)^n
适用于n天相互独立且概率都为p的情形。

为什么独立性假设站不住脚

概率相乘的前提是某一天的天气不影响另一天的概率。真实天气几乎从不如此:周五到来的冷锋往往持续到周六,一团干燥气团也可能让整周都不下雨。相邻的日子是相关的。

在正相关(下雨之后更容易继续下雨)的情况下,雨天往往扎堆出现,“一天都不下雨”的概率会比乘积算出的更高。因此,按独立性计算往往会高估至少一天下雨的概率。66.4%应当看作教学用的近似值,而不是预报。

一周气温的平均数与温差

预报的另一半是气温。假设周一到周日的最高气温(假设数据)为:18 °C、21 °C、24 °C、27 °C、25 °C、20 °C、19 °C。

xˉ=x1+x2++xnn\bar{x} = \frac{x_1 + x_2 + \cdots + x_n}{n}
n个数据的算术平均数。
例题:平均数与温差
  1. 18+21+24+27+25+20+19=154\displaystyle 18+21+24+27+25+20+19 = 154 把七个温度相加。
  2. xˉ=1547=22\displaystyle \bar{x} = \frac{154}{7} = 22 除以天数。
  3. R=2718=9\displaystyle R = 27 - 18 = 9 求温差(极差):最大值减最小值。
  4. 检验:平均数22 °C介于最低18 °C与最高27 °C之间。各数据与22的偏差为 −4、−1、2、5、3、−2、−3,总和为零,这是算术平均数的性质。
1234567182022242628星期(周一=1)°C每日最高气温平均数
最高气温从18 °C升到27 °C后回落;平均线在22 °C,温差为 27 − 18 = 9。

平均数概括一周的整体水平,温差反映波动大小。两周的平均气温都是22 °C,感受可能完全不同:一周稳定在21 °C到23 °C之间(温差2),另一周在15 °C到29 °C之间起伏(温差14)。所以两个量要一起看。日常所说的“昼夜温差”指同一天最高温与最低温之差,计算方法相同。

常见错误

  • 把不同日子的概率直接相加。 只有互斥事件才能相加;周五和周六可能都下雨。
  • 把70%理解为下雨的面积或时间比例。 它是针对该地点的概率,不是地图或时长的百分比。
  • 没下雨就说预报错了。 一天的结果无法检验概率,只能看大量相似日子的频率。
  • 不考虑独立性就相乘。 乘积只是近似,相邻日子通常相关。
  • 混淆温差与平均数。 温差衡量波动而非典型值,而且只取决于两个极端值。

常见问题

预报50%是不是等于“不知道”?

不是。它表示在相似情形下有一半的时候会下雨。这是关于不确定性的精确信息;“不知道”意味着完全没有估计依据。

概率较小时能直接相加吗?

和是一个上界:至少一个事件发生的概率不会超过它。数值较小时和接近正确答案,但在独立假设下,对立事件法才是精确方法。

为什么只看平均数不够?

因为差别很大的数据可能有相同的平均数。极差或标准差等量能说明数据的离散程度。

极差用到全部数据了吗?

没有,只用到最大值和最小值。所以它计算简单,但容易受到某一天异常值的影响。