You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言线性回归报错:object 'MEDV' not found问题求助

问题原因
  • 核心错误是你构建train.df时筛选的字段不包含MEDV列:你定义的selected.var <- c(1, 4, 6)只选择了数据集的第1、4、6列,而波士顿房价数据集中目标变量MEDV(房屋均价)默认是第14列,没有被纳入train.df中,所以lm()调用时找不到作为因变量的MEDV对象,直接触发了当前报错。
  • 额外注意:你的代码里存在多处注释和逻辑不匹配的地方,比如注释提到"1000 random sample"但实际你只取了前500行数据,不过这部分不触发当前报错,后续调整注释即可。
解决方案
  1. 首先确认MEDV对应的列位置,运行如下代码查看数据集所有列名和顺序:
colnames(housing.df)
  1. 把MEDV对应的列号加入到selected.var的列表中,比如确认MEDV是第14列的话,修改代码为:
# 前三个是你原来选择的自变量,最后一个是目标变量MEDV的列号
selected.var <- c(1, 4, 6, 14)
  1. 修改后重新运行构建train.df和valid.df的代码,可先执行colnames(train.df)确认列表中已经包含MEDV,再运行线性回归代码即可正常运行。

内容的提问来源于stack exchange,提问作者SSJ5Broli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 11:54:04