【问题标题】:Why won't 'twoways' in plm produce fixed effects for group as well as time?为什么 plm 中的“双向”不会对组和时间产生固定的影响?
【发布时间】:2019-12-19 13:08:28
【问题描述】:

当我在plm 包中进行两种方式模型时,我的理解是它应该对组和时间具有固定效果,但是当我手动查看固定效果时,它只会对组变量产生固定效果。例如,使用 plm 包中的罐头数据:

> data("Produc", package = "plm")
> zz <- plm(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp,
            data = Produc, index = c("state","year"),model='pooling')
> qq <- plm(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp,
            data = Produc, index = c("state","year"),model='within',effects='twoways')
> length(fixef(zz))
Error in fixef.plm(zz) : fixef is relevant only for within models
> length(fixef(qq))
[1] 48
> length(unique(Produc$state))+length(unique(Produc$year))
[1] 65

我的期望是最后两行应该相等,即应该有年份和州的固定效应。为什么它们不同?

【问题讨论】:

    标签: panel-data plm


    【解决方案1】:

    这在fixef的帮助中有说明,使用?fixef查看:

    对于双向模型,fixef 的默认行为是输出组(“个人”)固定效果。如果您想要时间固定效果,请使用fixef(your_model, effect = "time")

    以您的示例为例,请注意您是否估计双向固定效应模型,因为参数称为 effect 而不是 effects(带有 s)。所以使用:

    qq <- plm(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp,
              data = Produc, index = c("state","year"), model ="within", effect = "twoways")
    length(fixef(qq)) # 48
    length(fixef(qq, effect = "time")) # 17
    

    您可以通过 summary(qq) 检查您估计的模型,因为其输出的第一行将告诉您模型:在这种情况下为“双向效应随机效应模型”。

    【讨论】:

    • 这很有帮助。关于你说的最后一件事的一个快速问题。你是说我应该把“效果”作为双向或“效果”的论据吗?我认为在我的示例中我会使用效果,您的示例中也是如此,但我对您的回答感到困惑,因为在我看来您是在说我应该使用效果。
    • 使用effect(不带 s)- 很好。我相应地编辑了我的答案。 effects(带 s)是在省略号 (...) 中处理的未知参数,plm 将退回到默认行为,这是一种单向模型。
    猜你喜欢
    • 2010-11-03
    • 1970-01-01
    • 1970-01-01
    • 2010-11-28
    • 1970-01-01
    • 1970-01-01
    • 2016-10-18
    • 2011-03-15
    • 2019-06-24
    相关资源
    最近更新 更多