gpt4 book ai didi

r - 在 R 中,如何将拟合值列添加到原始数据框中?

转载 作者:行者123 更新时间:2023-12-04 09:40:50 26 4
gpt4 key购买 nike

我有一个多元回归模型。我想将拟合值和残差添加到原始 data.frame作为两个新列。我怎样才能做到这一点?我在 R 中的模型是这样的:

BD_lm <- lm(y ~ x1+x2+x3+x4+x5+x6, data=BD)
summary(BD)

我也得到了拟合值
BD_fit<-fitted(BD_lm)

但是我想添加这个 BD_fit值作为我原始数据的列 BD .我不知道怎么做。当我尝试调用 BD_fit ,它只是给了我很多数字。我正在运行一个大型数据集,因此很难在此处列出所有这些数据集。

最佳答案

认为:

fm <- lm(demand ~ Time, BOD)

然后试试这个:
cbind(BOD, resid = resid(fm), fitted = fitted(fm))

或这个:
BOD$resid <- resid(fm)
BOD$fitted <- fitted(fm)

添加:

如果您有 NA demand 中的值那么您的拟合值和残差的长度将与您的数据行数不同,这意味着上述内容将不起作用。在这种情况下,请使用: na.exclude像这样:
BOD$demand[3] <- NA # set up test data
fm <- lm(demand ~ Time, BOD, na.action = na.exclude)
na.exclude将自动用 NA 填充预测和残差值,以便它们与原始数据具有相同的长度。现在前面的行应该可以工作了。

关于r - 在 R 中,如何将拟合值列添加到原始数据框中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19065279/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com