根据 felm 估计计算 id 的数量

Calculating the number of id's from a felm estimation

我正在使用 felm 函数估算一系列国家和年份的固定效应面板模型。我想计算每个估计中包含的国家数量。如果我 运行 使用 plm 函数进行回归,我可以很容易地做到这一点,如下所示。但是,出于其他原因,我不想 运行 使用 plm 进行回归。有没有办法计算 felm 估计中使用的 id 的数量?
示例代码如下:

library(plm); library(lfe)
data("Grunfeld", package = "plm")
reg_plm <- plm(inv ~ value + capital,   data = Grunfeld, model = "within", effect = "twoways")
reg_felm <- felm(inv ~ value + capital  | 
                  firm + year, data=Grunfeld)

pdim(reg_plm)[["panel.names"]]$id.names 

请注意,我的数据是一个不平衡的面板,pdim 不适用于 felm 对​​象。

使用 str(reg_felm) - 通常在这种情况下,在搜索对象时 - 显示固定效果存储在 fe.

我们可以显示 levels

levels(reg_felm$fe$firm)
# [1] "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9"  "10"

他们的号码在哪里

length(levels(reg_felm$fe$firm))
# [1] 10

或者用table看看是否平衡。

reg_felm$fe$firm |> table()
#  1  2  3  4  5  6  7  8  9 10 
# 20 20 20 20 20 20 20 20 20 20 

使用起来可能更方便nlevels

nlevels(reg_felm$fe$firm)