如何使用函数拟合预测单个值?

问题描述

让我们考虑以下模型:

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 中提取拟合数据。