我正在尝试使用R中的Rssa库来填充简单数据:
library(Rssa)
dt=EuStockMarkets
fame=data.frame(dt)
fame$DAX[150:200]=NA
fame$SMI[150:200]=NA
fame$CAC[150:200]=NA
fame$FTSE[150:200]=NA
s <- ssa(fame, kind = "mssa")
g <- gapfill(s, groups = list(1:6))
#NO error here
plot(g)
fame=fame[1:200,]
View(fame)
s <- ssa(fame, kind = "mssa")
g <- gapfill(s, groups = list(1:6))
我正在使用EuStockMarkets数据集。但是,当我将数据限制为1到200时,它会出现此错误
“gapfill.mssa中的错误(s,groups = list(1:6)): gapfilling应从形状SSA对象开始“
编辑:当我使用fame = fame[1:202,]
时,它不会出现此类错误。但我需要进行预测,以便将数据尾部设置为NA。< / p>
答案 0 :(得分:1)
您需要使用forecast
系列函数(例如rforecast
/ vforecast
)从系列末尾开始填补空白(也称为“系列预测”)。您还可以使用bforecast
来构建预测的引导置信范围。
请注意,MSSA的情况有点特殊,因为该系列的长度可能不同,因此可以根据需要使用NA填充该系列(例如,如果将它们表示为matrix / data.frame –正是您的情况)
请参见https://www.jstatsoft.org/article/view/v067i02中的第2章和第3章。