问题描述
让我们考虑以下模型:
set.seed(42)
y <- rnorm(100)
x <- data.frame('Exp' = rexp(100),'Poiss' = rpois(100,1))
model_1 <- lm(y~.,data = x)
我想预测 model_1
的值 (Exp = 1,Poiss = 0.5)。
为此,我使用了代码:fitted(model_1,data.frame(Exp = 1,Poiss =0.5))
。
但是我得到了 100 个值而不是一个预测值。我做错了什么?
解决方法
您可以使用:
#Code
predict(model_1,data.frame(Exp = 1,Poiss =0.5))
因为 fitted()
这样做:
fitted 是一个从对象中提取拟合值的通用函数 由建模函数返回。 fitd.values 是它的别名。
这就是您获得 100 个值的原因,因为这是从原始 model_1
中提取拟合数据。