使用R中的正弦拟合预测下一项

时间:2019-02-09 00:03:34

标签: r lm predict sine

我的目标是使Sine适应时间序列并猜测下一个任期。这将是我正在建立的更大模型的指标之一(获得了大量的实时序列数据行)。下面是我问题的一个简单基本版本。

简单的8元素数据框:

a <- data.frame(Trial = c(-1,0,1,0,-1,0,1,0))

很容易看到它有一个正弦曲线,如一段时间内的振荡。 1 / -1不一定是正弦曲线的最大值/最小值,但是总体趋势是可以理解的。 下一个词显然是“ -1”,即第9个元素。

如何使用“ lm”功能在R中获得它(第9个元素)?我浏览了其他有关Sine的stackoverflow相关文章,但是找不到关于预测下学期的结论。

我尝试使用以下模型进行建模:

Temp_DF <- data.frame(a, X_values = 1:8)

Sine_Model = lm(Temp_DF$Trial~ I(sin(pi*2*Temp_DF$X_values)))

现在如何估算系列的下一期?

答案不必为“ -1”,因为没有地方可以通知模型上下限为1,-1。但是第9个项应小于0。这将增加我的预测能力模型。

以下预测行出现错误,要求总共8个输入。显然,这是将每一行都视为输入字符,这显然不是我的意图。

predict(object = Sine_Model, newdata = data.frame(X_values = 9))

如何拟合a + b sin(c x)之类的东西?那怎么预测呢?

0 个答案:

没有答案