将不同的回归模型拟合为多项式数据?

时间:2016-09-28 22:42:32

标签: r model statistics regression linear-regression

我是R的绝对初学者所以请耐心等待。

我有一些生成的多项式(平方)数据

x.training <- seq(0, 5, by=0.01) # x data
error.training <- rnorm(n=length(x.training), mean=0, sd=1) # Error (0, 1)
y.training <- x.training^2 + error.training  # y data

我想对这些数据应用3种不同的回归模型,以证明哪种模型更适合。我的3个模型是线性,多项式和三角函数(cos)。

我尝试了以下但是这些线要么不显示,要么只是直线。我怎样才能正确应用这些模型?

完整代码:

x.training <- seq(0, 5, by=0.01) # x data
error.training <- rnorm(n=length(x.training), mean=0, sd=1) # Error (0, 1)
y.training <- x.training^2 + error.training  # y data

linear.model <- lm(y.training~x.training)
poly.model <- lm(y.training~poly(x.training, 2))
trig.model <- lm(y.training~cos(x.training))

linear.predict <- predict(linear.model)
poly.predict <- predict(poly.model)
trig.predict <- predict(trig.model)

plot(x.training, y.training)
lines(linear.predict, col="red")
lines(poly.predict, col="blue")
lines(trig.predict, col="green")

graph

1 个答案:

答案 0 :(得分:2)

我的绝对简单的错误。我觉得很傻。

lines(x.training, linear.predict, col="red")
lines(x.training, poly.predict, col="blue")
lines(x.training, trig.predict, col="green")

我没有以任何X坐标进食,并预测只返回Y-hat。

good graph

好多了!