R:对分割数据使用forecast :: accuracy()

时间:2016-04-11 23:51:18

标签: r forecasting cross-validation

很难从accuracy()获取{forecast}函数来处理预测的测试值。

首先,在训练数据上建立LM模型(此处为可重复性):

library(ISLR)
set.seed(1)
train <- sample(392, 196)
lm.fit <- lm(mpg~horsepower, data = Auto, subset = train)

然后计算测试数据的MSE:

mean((auto$mpg - predict(lm.fit, Auto))[-train]^2)

我的目标是使用forecast::accuracy()获取MSE(而不是上述)和其他错误测量。然而,无论我喂它什么,我根本无法让它运行。这肯定是用户错误,并在那里寻找任何想法。

我知道forecast::accuracy()不包含“开箱即用”的MSE,但我计划通过accuracy(data)[, 2]^2计算并与其他输出合并。

1 个答案:

答案 0 :(得分:1)

accuracy(forecast(lm.fit, newdata=Auto[-train,]), Auto$mpg[-train])[,2]^2