【发布时间】:2015-07-11 12:38:39
【问题描述】:
我在名为 petrol 的 data.frame 中获得了数据,它有 125 行和以下列:hydrcarb、tanktemp、disptemp、tankpres、disppres、@ 987654327@, sqrdisppres
我被要求从 petrol 中删除最后 25 行,拟合模型,其中 hydrcarb 是响应变量,其余是解释变量,并对前 100 行执行此操作。然后使用拟合模型预测剩下的 25 个。
这是我到目前为止所做的:
#make a new table that only contains first 100
petrold <- petrol[-101:-125,]
petrold
#FITTING THE MODEL
petrol.lmB <- lm(hydrcarb~ tanktemp + disptemp + tankpres + disppres + sqrtankpres + sqrdisppres, data=petrol)
#SELECT LAST 25 ROWS FROM PETROL
last25rows <-petrol[101:125,c('tanktemp','disptemp','tankpres','disppres','sqrtankpres','sqrdisppres')]
#PREDICT LAST 25 ROWS
predict(petrold,last25rows[101,c('tanktemp','disptemp','tankpres','disppres','sqrtankpres','sqrdisppres')])
我知道我的 predict 命令做错了,因为 R 给了我错误消息:
Error in UseMethod("predict") :
no applicable method for 'predict' applied to an object of class "data.frame"
所以我不确定如何为 25 组不同的数据获取 hydrcarb 的预测值。
【问题讨论】:
-
predict的第一个参数是模型,在本例中为petrol.lmB。看看?predict。
标签: r dataframe regression lm predict