面板数据,包括子组或合并的OLS

时间:2019-08-14 11:10:00

标签: r panel-data plm

我正在分析一个国家/地区分开的数据集,而且在年龄组和性别队列中,还包括5个年度。这些年之间进行了干预。

由于数据稀疏,我想比较每个子组的影响,因此毕竟我可能会达到统计显着性(例如,两个国家的女性年龄在10至20岁之间,我将此变量称为ID,每个变量仅存在一个数字国家)。

  1. 我尝试使用plm软件包进行面板分析,但是,我尝试对国家,年份和ID进行索引,但这并不起作用,因为它不是唯一的。 甚至可能包含国家效应但具有国家子集? (请参见下面的代码)

  2. 我通过使用lmList并保存系数来尝试了差异差异。每个子组通过ID分开。 (请参见下面的代码) 这已经奏效,但是在有限的时间内,即使系数都是相同方向,也没有达到统计显着性。因此,我想知道是否有可能再次组合这些模型,从而达到可靠的结果?

1. fixed <- plm(FE ~ x , data=df, index=c("ID","country", "year"), model="within")

2. list <- coef(lmList(y~ treated + time + did | ID, data=df))

1错误。

  duplicate couples (id-time)
In addition: Warning messages:
1: In pdata.frame(data, index) :
  duplicate couples (id-time) in resulting pdata.frame
 to find out which, use e.g. table(index(your_pdataframe), useNA = "ifany")
2: In is.pbalanced.default(index[[1]], index[[2]]) :
  duplicate couples (id-time)

对于2。 我确实得到了一个包含所有系数的数据框,但是有什么想法可以正确地求和或显示这些系数?仅仅取一个系数的平均值似乎技巧不高。

高度赞赏的任何帮助。

1 个答案:

答案 0 :(得分:0)

我解决了第一个问题(只是编码)。 <div class="wave">I'm wavy</div>需要plm的面板结构。但是,无论您的观察单位是什么,都可以定义新的ID。在这里,您可以将标识符中的这些数字变量与index=c("individual", "time")组合在一起:

dplyr

通常,您可以定义所有其他种类的观察组。您的“ ID”是数字还是字符串?您应该添加更详细的数据描述或提供一些示例数据。