我正在尝试根据我的多项式模型预测 y 变量的预测值。
lumber.predict.plm=lm(lumber.unemployment.women$lumber.1980.2000 ~
scale(lumber.unemployment.women$woman.1980.2000) +
I(scale(lumber.unemployment.women$woman.1980.2000)^2))
xmin=min(lumber.unemployment.women$woman.1980.2000)
xmax=max(lumber.unemployment.women$woman.1980.2000)
predicted.lumber.whole=data.frame(x=seq(xmin, xmax, length.out=500))
predicted.lumber.whole$lumber=predict(lumber.predict.plm,newdata=predicted.lumber.whole,
interval="confidence")
除了最后一个之外,上述所有命令都可以正常工作。它给出以下错误 -
predicted.lumber.whole$lumber=predict(lumber.predict.plm,newdata=predicted.lumber.whole,
+ interval="confidence")
#Error in `$<-.data.frame`(`*tmp*`, "lumber", value = c(134.507238798567, :
# replacement has 252 rows, data has 500
#In addition: Warning message:
#'newdata' had 500 rows but variables found have 252 rows
正在对其执行回归的数据框属性..
str(lumber.unemployment.women)
#'data.frame': 252 obs. of 2 variables:
# $ lumber.1980.2000: num 108.2 109.9 109.6 99.8 97 ...
# $ woman.1980.2000 : num 5.8 5.9 5.7 6.3 6.4 6.5 6.6 6.7 6.3 6.7 ...
为什么预测值取决于我在数据框中的观察数量?