r - 使用 plm 函数创建面板数据时出现类 (x) 错误
问题描述
我正在尝试使用 plm 函数从我从 Excel 导入的平衡面板数据中汇集模型来创建面板数据。
当我运行代码时,出现以下错误:
class(x) <- setdiff(class(x), "pseries") 中的错误:将类设置为矩阵无效,除非维度属性的长度为 2(为 0)
library(plm)
library(readxl)
library(tidyr)
library(rJava)
library(xlsx)
library(xlsxjars)
all_met<- read_excel("data.xlsx", sheet = "all_met")
attach(all_met)
Y_all_met <- cbind(methane)
X_all_met <- cbind(gdp, ecogr, trade)
pdata_all_met <- plm.data(all_met, index=c("id","time"))
pooling_all_met <- plm(Y_all_met ~ X_all_met, data=pdata_all_met, model= "pooling")
运行代码后,我应该获得数据的汇总 ols 回归的汇总统计信息。有人可以告诉我如何解决这个问题吗?提前致谢。
解决方案
第一个:
避免plm.data
并pdata.frame
改用:
pdata_all_met <- pdata.frame(all_met, index=c("id","time"))
如果plm.data
没有给你一个弃用警告,请使用更新版本的包。
第二(并解决问题):
data
如果您使用 的参数,请在公式中指定列名,而不是来自全局环境的变量plm
,即试试这个:
plm(methane ~ gdp + ecogr + trade, data=pdata_all_met, model= "pooling")
推荐阅读
- elasticsearch - 在 Elasticsearch 中,如何使用无痛脚本获取字段长度?
- c++ - C++ 类超类
- linux - 如何使用shell脚本linux获取日期时间作为输出
- django - 使用 AWS 斜线后地理重定向相同的域
- java - 运行应用程序时出错 - “|WARN|无法检索令牌 com.amazonaws.SdkClientException:无法连接到服务端点:”
- ruby-on-rails - Capistrano 无法加载此类文件 -- net/scp (LoadError)
- websocket - 我们如何在jmeter webscoket负载测试中获得客户端请求和服务器接收到的请求之间的一一对应关系
- javascript - 使用 Axios 返回具有多个响应的数组
- javascript - 如何仅在使用猫鼬的数据库中没有文档时为数据库播种
- python - 使用新的 xgboost-distribution 时导入错误