如何用fable包的ARIMA模型完成Open差分对High对数的预测及逆变换?
问题:将差分后的Open预测值逆变换为原始Open变量
已基于2015年GOOG股票数据,通过ARIMA模型对Open的一阶差分dOpen建模并得到预测值,需要将dOpen的预测结果逆变换还原为原始Open变量的预测值。
解决方案
因为dOpen = difference(Open)是一阶差分(即dOpen_t = Open_t - Open_{t-1}),逆变换需要:
- 获取原始数据中最后一个真实的
Open值作为起点 - 对预测的
dOpen进行累积求和,再加上起点值得到原始Open的预测
完整代码实现
# 1. 获取原始数据的最后一个Open值 last_open <- google_2015 |> slice_tail(n=1) |> pull(Open) # 2. 对dOpen预测值进行逆变换,得到Open的预测 xd_transformed <- xd |> mutate( # 计算dOpen预测值的累积和 cum_dOpen = cumsum(.mean), # 逆差分得到原始Open的预测值 Open_pred = last_open + cum_dOpen ) # 查看转换后的结果 xd_transformed
结果说明
cum_dOpen:预测期内dOpen的累积变化量Open_pred:还原后的原始Open变量预测值,对应预测期的每一天
内容的提问来源于stack exchange,提问作者douseik
相关产品推荐
相关产品推荐

