R:多元线性回归模型和预测模型

时间:2014-03-24 14:33:50

标签: r linear-regression prediction lm

从线性model1 = lm(temp~alt+sdist)开始我需要开发一个预测模型,其中将有新数据出现并且将对temp进行预测。

我尝试过这样的事情:

model2 = predict.lm(model1, newdata=newdataset)

但是,我不确定这是正确的方法。我想知道的是,如果这是正确的方法,可以预测temp。对newdataset来说,我有点困惑。应该填写哪些值?

1 个答案:

答案 0 :(得分:2)

我将评论中的所有内容都放到了这个答案中。

1)您可以使用predict而不是predict.lm,因为predict会知道您的输入属于lm类,并自动执行正确的操作。

2 newdataset应该是data.frame,其变量与原始预测变量相同 - 在本例中为altsdist

3)如果您在默认情况下使用read.table引入数据,则会创建data.frame。这假定新数据包含名为altsdist的列,然后您可以执行以下操作:

NewDataSet<-read.table(whatever)
NewPredictions<- predict(model1, newdata=NewDatSet)

4)完成此操作后,如果要检查预测 - 可以执行以下操作

summary(model1)

这将为您提供altsdist的截距和系数     NewDataSet [1,] 这应该为您提供第一行的altsdist值,您可以将括号中的1更改为您想要的任何行。然后使用summary(model1)中的信息,使用您信任的任何方法计算预测值应该是什么。

最后使用     NewPredictions [1] 得到predict()给你的第一行(或将1更改为任何其他行)

希望这一切都能解决。