我想做面板回归 R 并使用多个固定效应。 我尝试首先使用 pdata.frame 函数构建面板数据集,但我不确定我做得是否正确。
我有 2010 年至 2015 年的贸易交易数据,这些数据显示了向某些目的地出口的公司。 话虽这么说,有多家公司在出口,而且显然同时出口到不同的目的地。因此,行看起来像,
firm. destination year
Firm A US. 2010. ...
Firm A. Mexico. 2010
Firm B. Russia. 2010
Firm C. China. 2011
像这样。
我尝试使用 pdata.frame 函数将数据集制作为面板数据集。 我知道为了成为面板数据集,它需要个体和时间索引。
但是,由于相同的公司名称出现在多行中(同一年出口到同一目的地的公司),因此我无法选择公司作为索引。如何使用 plm 制作面板数据集来执行回归?
我所做的是将公司和目标列结合起来,并基于此制作面板数据集。 因此面板数据集看起来像,
identifier. firm. destination. year
Firm A * US * 2010 firm A. US. 2010
Firm A * Mexico * 2010 firm A. Mexico. 2010
...
像这样。这是使用 pdata.frame 构建面板数据集的正确方法吗?
这样做之后,我进行了如下的plm回归。
model <- plm(dependent ~ regressor, index = "firm", data = panel_data, model = "within")
但是,我得到的结果与
的结果完全相同model <- plm(dependent ~ regressor, data = panel_data, model = "within").
这意味着公司固定效应根本没有影响。
我对这个结果表示怀疑,并猜测数据构建本身可能是错误的。
很可能,您使用这两个命令估计了相同的模型。这与其说是一个编程或 PLM 问题,不如说是一个关于面板数据维度的概念问题。
使用 plm 的 pdata.frame 的索引参数(或直接在函数 plm 中),您无需指定固定效果。您指定数据的面板结构,即哪个变量用作观察单位(“个体”),哪个变量指定时间片(“时间”),因此是二维的。如果您仅指定第一个维度,则会生成时间维度,但在这种情况下可能不是您想要的。您希望
year
变量作为第二个索引。
对于第一个维度:由于一年内多次拥有同一家公司,因此该数据从概念上讲并不容易适用于固定效应模型。您要么想要汇总这些值以得出每个公司-年份组合的度量(例如,公司-年份组合的平均值),要么将公司-目的地的组合视为您的观察单位(因此不仅仅将公司作为观察单位)。对于后一种方法,将公司和目的地组合在一个变量中(例如通过连接两个字符串)。请注意,您的“个人”效应不是公司固定效应,而是公司目的地固定效应。
在
plm
中,参数 effect
设置为 "individual"
将估计单向模型,其效果指定为第一个面板数据维度(因此此处为公司或公司目的地)。