首页 > 解决方案 > 具有重复 id/时间观察的 plm 面板回归错误

问题描述

我需要对面板数据进行回归。我的数据着眼于两个不同观察点(旺季日期和淡季日期)的酒店客房计划价格。

我有这个数据(仅供参考,这是该问题的简化数据,我的实际数据集包含类似类型的 3855 个酒店价格观察值和 15 个以上变量),然后我运行:

library(plm)
Y <- cbind(cost)
X <- cbind(deluxe, standard, dinner, cancell, capacity, size)
pdata <- pdata.frame(mydata, index = c("ID_roomplan", "season"), drop.index = FALSE)
fixed <- plm(Y ~ X, data = pdata, model = "within")

我得到以下信息:

Warning message:
In pdata.frame(mydata, index = c("ID_roomplan", "season"),  :
  duplicate couples (id-time) in resulting pdata.frame

我知道这是因为需要有一对唯一的 id-time(即 ID_roomplan-season)才能使 plm 工作,但我不知道如何修复数据,因为在同一房间内可以有不同价格的相同房间计划由于选择不同(例如,因为一种房型可以取消,或者一间房包含晚餐)。

我觉得我有两个选择:

  1. 创建新的 ID_roomplan 类别,不仅区分房间计划,还包括虚拟变量选项作为标识符,然后执行 plm。或者
  2. 分别做旺季和淡季的lm回归模型,不使用plm。

哪个选项最好,还有其他选项吗?

标签: rregressionpanelplm

解决方案


推荐阅读