gpt4 book ai didi

r - 获取 R 中回归使用的数据观察值 (plm)

转载 作者:行者123 更新时间:2023-12-04 12:47:45 32 4
gpt4 key购买 nike

我正在使用包 plm 估算面板模型。面板中的一些人没有所有解释变量的数据,因此他们被排除在回归之外。我如何才能看到哪些特定观察已用于估计?

在 Stata 中,通常的命令是 e(sample)。 R 中的等价物是什么?

最佳答案

用于模型的数据存储在 plm 函数返回的列表中。该列表包含多个元素,其中一个名为 model。这是存储用于模型的数据的地方。下面是一个基于 plm 帮助的示例:

library(plm)

data("Produc")

让我们将 Produc$pcap 的前 20 个值设置为 NA(缺失数据):

Produc$pcap[1:20] = NA

现在我们将使用 Produc 创建一个 plm 模型:

zz <- plm(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp,
data = Produc, index = c("state","year"))

zz 是包含 plm 函数返回的信息的列表。您可以运行 str(zz) 来查看 zz 包含的内容。用于模型的数据存储在 zz$model 中。您可以通过从 21 开始的行名看到前 20 行丢失了,因为我们在这些行中将 Produc$pcap 设置为 NA

head(zz$model)  # You can also do: head(zz[["model"]])
   log(gsp) log(pcap)  log(pc) log(emp) unemp
21 10.13634 9.358610 10.21481 6.571583 4.1
22 10.15417 9.403360 10.26915 6.614726 5.6
23 10.12323 9.467233 10.31703 6.591811 12.0
24 10.16743 9.518111 10.28821 6.631606 9.8
25 10.24388 9.559265 10.31137 6.696170 8.2
26 10.34374 9.603196 10.34623 6.797271 6.1

如果要选择模型中使用的数据框行,可以使用 zz$model 的行名作为子集索引:

Produc[rownames(zz$model), ]

Produc[complete.cases(Produc), ] 将仅返回数据框中没有任何缺失数据的那些行。但是请注意,如果数据框中的某些列缺少数据,但未在模型公式中使用,那么这种方法通常会排除一些在模型中仍然使用的数据行(异常(exception)情况是模型中未使用的列中的缺失数据总是伴随着模型中使用的列中的缺失数据出现在同一行中。

关于r - 获取 R 中回归使用的数据观察值 (plm),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42963621/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com