计算滚动平均时间序列的不确定度
计算滚动平均时间序列的不确定度
嗨,看起来你已经在处理1957年以来海洋吸热的时间序列数据,还用5年中心滚动平均做了平滑处理,现在需要计算滚动平均后的不确定度对吧?我来一步步帮你理清楚:
首先先回顾你的滚动平均公式:
\bar{x}_n = \frac{x_{n-2} + x_{n-1} + x_n + x_{n+1} + x_{n+2}}{5}
不确定度的核心计算逻辑
对于独立测量值的线性组合,不确定度的传播遵循方差相加的原则:如果有一个量 ( y = a_1x_1 + a_2x_2 + ... + a_kx_k ),那么y的方差 ( \sigma_y^2 = a_12\sigma_{x_1}2 + a_22\sigma_{x_2}2 + ... + a_k2\sigma_{x_k}2 ),其中 ( \sigma_{x_i} ) 是每个 ( x_i ) 对应的标准误差。
套用到5年滚动平均的场景
在你的滚动平均计算里,每个数据点的权重都是 ( \frac{1}{5} ),所以滚动平均结果的方差可以写成:
\sigma_{\bar{x}_n}^2 = \left(\frac{1}{5}\right)^2\sigma_{n-2}^2 + \left(\frac{1}{5}\right)^2\sigma_{n-1}^2 + \left(\frac{1}{5}\right)^2\sigma_n^2 + \left(\frac{1}{5}\right)^2\sigma_{n+1}^2 + \left(\frac{1}{5}\right)^2\sigma_{n+2}^2
进一步简化后,滚动平均的标准误差(也就是不确定度)为:
\sigma_{\bar{x}_n} = \frac{1}{5}\sqrt{\sigma_{n-2}^2 + \sigma_{n-1}^2 + \sigma_n^2 + \sigma_{n+1}^2 + \sigma_{n+2}^2}
推广到任意大小的中心滚动窗口
如果你的滚动窗口大小是 ( 2k+1 )(比如k=2时就是5年窗口),那通用的不确定度公式可以写成:
\sigma_{\bar{x}_n} = \frac{1}{2k+1}\sqrt{\sum_{i=n-k}^{n+k}\sigma_i^2}
几个需要注意的点
- 这个推导的前提是各个数据点的测量误差是独立的,如果你的数据误差存在相关性(比如相邻年份的误差有关联),那还需要加入协方差项,公式会更复杂。
- 对于序列首尾的点(比如前2年和最后2年),中心滚动平均无法直接计算,你可能需要用单边滚动平均或者截断处理,对应的不确定度计算也要调整窗口内的项数。
备注:内容来源于stack exchange,提问作者pboardman449
相关产品推荐
相关产品推荐

