我将数据集分解为火车并进行如下测试:
splitdata<-split(sb[1:nrow(sb),], sample(rep(1:2, as.integer(nrow(sb)/2))))
test<-splitdata[[1]]
train<-rbind(splitdata[[2]])
sb是原始数据集的名称,因此它是50/50列车和测试。
然后我使用训练集装了一个glm。
fitglm<- glm(num_claims~year+vt+va+public+pri_bil+persist+penalty_pts+num_veh+num_drivers+married+gender+driver_age+credit+col_ded+car_den, family=poisson, train)
现在我想预测使用这个glm,比如接下来的10个观察结果。
我无法在predict(),
中指定newdata我试过了:
pred<-predict(fitglm,newdata=data.frame(train),type="response", se.fit=T)
这将给出一些等于训练集中样本数量的预测。
最后,如何用置信区间绘制这些预测?
感谢您的帮助
答案 0 :(得分:5)
如果您正在询问如何在测试集中的下一个10上构建预测,那么:
pred10<-predict(fitglm,newdata=data.frame(test)[1:10, ], type="response", se.fit=T)