12.3 限定预测结果范围

人们通常希望预测值为正,或者要求它们限定在某个指定范围 \([a,b]\) 内。这两种情况都能通过转换相对容易地完成。

正数预测

要施加一个正约束,只需要通过指定 Box-Cox 参数 \(\lambda=0\) 进行对数处理。例如,考虑一打鸡蛋的实际价格(1900-1993;单位美分):

对一打鸡蛋的价格的预测,并用 Box-Cox 变换施加正约束。

图 12.3: 对一打鸡蛋的价格的预测,并用 Box-Cox 变换施加正约束。

由于我们设定biasadj=TRUE,所以预测值为预测分布的均值。

限定区间范围的预测

要了解如何处理受限于某个区间的数据,可以假设鸡蛋价格被限制在 \(a=50\)\(b=400\) 之间。然后我们可以通过使用 logit 转换将数据从范围 \((a,b)\) 映射到整个实数范围: \[ y = \log\left(\frac{x-a}{b-x}\right), \] 其中 \(x\) 为原始刻度, \(y\) 为转换后的数据。下式是这个转换过程的逆转换等式。 \[ x = \frac{(b-a)e^y}{1+e^y} + a. \] 这不是一个内置的转换,因此我们需要做更多的工作。

对一打鸡蛋价格的预测,并将其限制在50至400之间。

图 12.4: 对一打鸡蛋价格的预测,并将其限制在50至400之间。

这里没有进行偏差调整,因此预测值是预测分布的中位数。因为分位数在单调递增的变换过程中被保留,因此这些变换的预测区间具有与变换尺度相同的覆盖概率。

经过转换,预测区间在50以上。由于这种人为(和不现实的)约束,预测分布变得非常偏斜。