R Studio - 如何预测 row-by-row 并在下一个中使用先前的预测 - 线性模型
R Studio - How to predict row-by-row and use previous prediction in next one - linear model
很抱歉,如果这不清楚,给它起标题时遇到了麻烦。
基本上我有一个预测销售额的线性模型,其中一个因素是前 10 天的销售额。因此,在预测下个月时,我需要估计该月每一天的 "previous 10 days of sales" 数。
我想使用该模型生成这些数字 - 因此,在我尝试预测的第一天,我有过去 10 天销售的实际数字。在那之后的一天,我有 9 天的真实数据,加上生成的一个预测数字。之后的一天,8天的真实数据和2天的生成数据,等等
不太确定如何实施,希望得到任何帮助。非常感谢。
首先想到的是使用预测数据的移动平均线。虽然一旦您仅对预测数据进行平均,但这是一个开始的地方。
moving.average = 0
test.dat = rnorm(100, 10,2)
for(i in 1:30){
moving.average[i] = mean(test.dat[i:i+10])
}
希望对您有所帮助
Kathy,从...获取您的前 10 个数据点。用它来做你的预测。
initialization <- c(9.463, 9.704, 10.475, 8.076, 8.221, 8.509,
10.083, 9.572, 8.447, 10.081)
prediction = initialization
这是一个使用最后 10 个值的愚蠢预测函数:
predFn <- function(vec10){
stopifnot(length(vec10) == 10)
round(mean(vec10) + 1 , 3)
}
虽然我平时喜欢用map
家族,但是这个好像是要loop
for(i in 11:20){
lo = i - 10
hi = i - 1
prediction[i] <- predFn(prediction[lo:hi])
}
我们得到了什么?
prediction
# [1] 9.463 9.704 10.475 8.076 8.221 8.509 10.083 9.572 8.447 10.081 10.263 10.343 10.407 10.400 10.633 10.874 11.110 11.213
# [19] 11.377 11.670
很抱歉,如果这不清楚,给它起标题时遇到了麻烦。
基本上我有一个预测销售额的线性模型,其中一个因素是前 10 天的销售额。因此,在预测下个月时,我需要估计该月每一天的 "previous 10 days of sales" 数。
我想使用该模型生成这些数字 - 因此,在我尝试预测的第一天,我有过去 10 天销售的实际数字。在那之后的一天,我有 9 天的真实数据,加上生成的一个预测数字。之后的一天,8天的真实数据和2天的生成数据,等等
不太确定如何实施,希望得到任何帮助。非常感谢。
首先想到的是使用预测数据的移动平均线。虽然一旦您仅对预测数据进行平均,但这是一个开始的地方。
moving.average = 0
test.dat = rnorm(100, 10,2)
for(i in 1:30){
moving.average[i] = mean(test.dat[i:i+10])
}
希望对您有所帮助
Kathy,从...获取您的前 10 个数据点。用它来做你的预测。
initialization <- c(9.463, 9.704, 10.475, 8.076, 8.221, 8.509,
10.083, 9.572, 8.447, 10.081)
prediction = initialization
这是一个使用最后 10 个值的愚蠢预测函数:
predFn <- function(vec10){
stopifnot(length(vec10) == 10)
round(mean(vec10) + 1 , 3)
}
虽然我平时喜欢用map
家族,但是这个好像是要loop
for(i in 11:20){
lo = i - 10
hi = i - 1
prediction[i] <- predFn(prediction[lo:hi])
}
我们得到了什么?
prediction
# [1] 9.463 9.704 10.475 8.076 8.221 8.509 10.083 9.572 8.447 10.081 10.263 10.343 10.407 10.400 10.633 10.874 11.110 11.213
# [19] 11.377 11.670