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

使用R语言plm包运行面板数据固定效应回归时遭遇‘Fixed对象未找到’及语法错误的技术求助

解决plm固定效应回归的语法错误与"Fixed未找到"问题

嘿,我来帮你排查下问题所在——你遇到的两个错误其实都是由语法问题导致的,一步步来解决:

第一个错误:unexpected symbol 的原因

你公式里的变量比如 Comp Employment、Personal inc、prison pop 都带空格,R 默认不识别包含空格的变量名,会把空格后的内容当成新的符号,所以触发了语法错误。

第二个错误:object 'Fixed' not found 的原因

因为第一条plm语句执行失败,根本没创建出名为Fixed的回归结果对象,所以调用summary(Fixed)时自然找不到它。

修正方案

我给你两种可选的修正方式,选哪种都能解决问题:

方式1:用反引号包裹带空格的变量

直接在公式里给带空格的变量套上反引号`,让R正确识别它们:

library(readr)
library(plm)

# 读取数据
eco_490_data <- read_csv("C:/Users/Steve's pc/Downloads/New folder (2)/Stephens eco class/eco 490 data.csv")
View(eco_490_data)
names(eco_490_data)

# 修正语法后的plm回归
Fixed <- plm(Hom ~ LRM + `Comp Employment` + beer + Poverty + pop + Unemployment + Employment + `Personal inc` + `prison pop`, 
             data = eco_490_data, 
             index = c("year", "msa"), 
             model = "within")

# 现在可以正常查看结果了
summary(Fixed)

方式2:提前重命名变量(更推荐)

把所有带空格的变量名改成下划线分隔的形式,避免后续代码再踩类似的坑:

library(readr)
library(plm)

# 读取数据
eco_490_data <- read_csv("C:/Users/Steve's pc/Downloads/New folder (2)/Stephens eco class/eco 490 data.csv")
# 批量替换变量名里的空格为下划线
colnames(eco_490_data) <- gsub(" ", "_", colnames(eco_490_data))
View(eco_490_data)
names(eco_490_data)

# 用新的变量名执行回归
Fixed <- plm(Hom ~ LRM + Comp_Employment + beer + Poverty + pop + Unemployment + Employment + Personal_inc + prison_pop, 
             data = eco_490_data, 
             index = c("year", "msa"), 
             model = "within")

summary(Fixed)

另外补充下:你原代码里公式第二行开头多了个多余的+,而且公式和data参数之间没加逗号,这些也是语法错误的诱因,上面的修正代码已经帮你调整好了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 03:32:44