考虑到预测函数及其R平方值,我有一个基本问题。
data<- datasets::faithful
# Linear model
model<- lm (eruptions~., data=data)
summary (model)[[9]] # R squared ajusted
# Creating test data to predict eruption values using the previous model
test.data<- data.frame(waiting= rnorm (80, mean = 70, sd = 14 ))
pred<- predict (model, test.data) # Predict eruptions based and the previou model
# New dataset with predicted values
newdata<- data.frame (eruptions = model.pred, waiting = test.data)
# Linear model to predicted values
new.model<- lm (eruptions~., data = newdata)
summary (new.model)[[9]] ## R-squared from predicted values
具有预测值的数据集的R平方为1.很明显,如果预测值基于预测函数中使用的相同变量,则通过R平方测量的拟合是完美的(= 1)。但是,我感兴趣的是我的模型有多好测试其他数据集,例如代码中的test.data。我是否正确使用预测功能?
提前致谢
答案 0 :(得分:0)
将新变量作为&#34; newdata&#34; predict()函数的参数。
在R控制台中键入?predict
以获取其R文档:
newdata
可选的数据框,用于查找变量 哪个可以预测。如果省略,则使用拟合值。