r - 从 lm 对象中提取因变量

标签 r lm

是否有从 lm 对象中提取 Y 的函数?

我使用残差(m)和预测(m)但我使用对象内部结构来提取Y ...

m = lm(Y ~ X1, d)
head(m$model$Y)
[1] -0.791214 -1.291986 -0.472839  1.940940 -0.977910 -1.705539

最佳答案

您可以使用 model.frame() ,如下所示:

# From the stats::lm documentation
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
group <- gl(2, 10, 20, labels = c("Ctl","Trt"))
weight <- c(ctl, trt)
lm1 <- lm(weight ~ group)

model.frame(lm1)$weight
##  [1] 4.17 5.58 5.18 6.11 4.50 4.61 5.17 4.53 5.33 5.14 4.81 4.17 4.41 
##  3.59 5.87 3.83 6.03 4.89 4.32 4.69

如果您对公式中的一个或多个变量调用函数,例如
lm2 <- lm(log(weight) ~ group)

您可以使用 get_all_vars(lm2)$weight 获取未转换的值( model.frame() 返回转换后的值)。

如果您想查看特定类可用的函数(特别是提取器函数),您可以使用 methods(class = "lm") 进行检查。 (或您感兴趣的任何对象类)。

关于r - 从 lm 对象中提取因变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29173916/

相关文章:

r - 了解 lm 和环境

r - lm预测不会预测

r - 当拟合是水平线时理解 lm Multiple R

r - 根据列的值用 0 或 1 转置、展开或旋转表

r - data.table v.1.11.0+ 不再读取由 v.1.10.4-3 读取的数据文件

r - R中斜率系数的推论

r - 将权重传递给函数内的 lm 和其他人

R数据.表: In-memory left join multiple columns from left and right side

python - Reticulate 无法安装 python 包

r - 避免在 knitr 中 float xtable 隐藏表格的标题