使用predict()函数对现有数据进行预测

时间:2015-11-15 18:50:41

标签: r predict

我在财务数据上运行了一系列算法。出于这个问题的目的,我有一个包含1226行数据的股票的金融市场数据。

I run the follow code to fit and predict the model:

strat.fit <- glm(DirNDay ~l_UUP.Close + l_FXE.Close + MA50 + +MA10 + RSI06 + BIAS10 + BBands05, data=STCK.df,family="binomial") 
strat.probs <- predict(strat.fit, STCK.df,type="response")

我将概率预测提升到第1226行,我有兴趣预测新的一天,即1227天。我在第1227天尝试预测得到以下回应

  

strat.probs [1227]                      NA

任何帮助/建议都将不胜感激

2 个答案:

答案 0 :(得分:2)

predict函数将根据当天其他变量的值预测DirNDay的值。如果您希望它为新的一天预测DirNDay,那么您需要为它提供新一天的所有其他相关变量。

听起来这不是你想要做的事情,你需要创建一个完全不同的模型,它使用时间(或日期)来预测值。然后,您可以为predict提供新的时间,并且可以使用它来预测新的DirNDay。

如果你不知道从哪里开始,有免费的在线教科书如何使用R by Rob Hyndman:https://www.otexts.org/fpp

(但是,如果我完全误解了glm模型,那么最后两个段落都没有。)

答案 1 :(得分:1)

为了预测第1228天,您需要知道解释变量(MA50,MA10等)的值将在1228天。将它们存储为新的数据框(例如STCK.df.new)并将其存入预测函数:

SET GLOBAL log_output="FILE"
SET GLOBAL general_log_file="Path/File"
SET GLOBAL general_log='ON'