如何平衡不平衡的面板数据?

克里斯蒂安

假设我有以下不平衡Pandel数据:

unbalanced.panel = structure(list(firm = c("A", "A", "A", "A", "B", "B", "A", "A", 
"B", "C", "C"), ind = c(1, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1), year = c(2010, 
2011, 2012, 2013, 2011, 2013, 2011, 2012, 2010, 2012, 2013), 
    charac1 = c("x", "x", "x", "x", "y", "y", "z", "z", "g", 
    "h", "h"), var1 = c(11, 12, 13, 14, 15, 18, 15, 29, 31, 13, 
    2)), row.names = c(NA, -11L), class = c("tbl_df", "tbl", 
"data.frame"))
   firm    ind  year charac1  var1
   <chr> <dbl> <dbl> <chr>   <dbl>
 1 A         1  2010 x          11
 2 A         1  2011 x          12
 3 A         1  2012 x          13
 4 A         1  2013 x          14
 5 B         2  2011 y          15
 6 B         2  2013 y          18
 7 A         2  2011 z          15
 8 A         2  2012 z          29
 9 B         1  2010 g          31
10 C         1  2012 h          13
11 C         1  2013 h           2

其中,每个唯一的组(个体)用的组合来标识firmind,即个体“A1”是从“A2”个别不同。时间索引由year变量给出

我想要的是平衡总数据(指数=(个人=公司指数,时间=年)),用NA填补隐性的缺失缺口。

预期结果如下:

   firm    ind  year charac1  var1
   <chr> <dbl> <dbl> <chr>   <dbl>
 1 A         1  2010 x          11
 2 A         1  2011 x          12
 3 A         1  2012 x          13
 4 A         1  2013 x          14
 5 B         2  2010 y          NA
 6 B         2  2011 y          15
 7 B         2  2012 y          NA
 8 B         2  2013 y          18
 9 A         2  2010 z          NA
10 A         2  2011 z          15
11 A         2  2012 z          29
12 A         2  2013 z          NA
13 B         1  2010 g          31
14 B         1  2011 g          NA
15 B         1  2012 g          NA
16 B         1  2013 g          NA
17 C         1  2010 h          NA
18 C         1  2011 h          NA
19 C         1  2012 h          13
20 C         1  2013 h           2

我尝试使用,plm::make.pbalanced(unbalanced.panel, balance.type = "fill")但出现以下错误:

模式错误<-(tmp,value = id_orig_typeof):无效以更改因子的存储模式

我什至尝试使用tidyr::complete(),但是这并不能达到我想要的平衡面板。

这些是我的要求:当唯一的个人(firm-ind)缺少年份行时,必须使用NA填充时变变量(var1),但是应使用唯一的变量填充时变变量,例如特征(charact1)值。

方法有什么问题tidyr::complete()它不允许我区分要填充或扩展的时不变变量和时变变量。而且它不能识别唯一的个人索引(在这种情况下为牢固索引)。

unbalanced.panel >%>
  tidyr::complete(firm, year, nesting(var1))

上面的代码使出现一个新的单独的“ C2”,并用NA填充时不变变量。

万维网

我们可以completetidyr包装中使用关键是要nesting正确设置

library(dplyr)
library(tidyr)

balanced.panel <- unbalanced.panel %>%  
  complete(nesting(firm, ind, charac1), year = full_seq(year, period = 1))
balanced.panel
# # A tibble: 20 x 5
#  firm    ind charac1  year  var1
#  <chr> <dbl> <chr>   <dbl> <dbl>
#  1 A         1 x        2010    11
#  2 A         1 x        2011    12
#  3 A         1 x        2012    13
#  4 A         1 x        2013    14
#  5 A         2 z        2010    NA
#  6 A         2 z        2011    15
#  7 A         2 z        2012    29
#  8 A         2 z        2013    NA
#  9 B         1 g        2010    31
# 10 B         1 g        2011    NA
# 11 B         1 g        2012    NA
# 12 B         1 g        2013    NA
# 13 B         2 y        2010    NA
# 14 B         2 y        2011    15
# 15 B         2 y        2012    NA
# 16 B         2 y        2013    18
# 17 C         1 h        2010    NA
# 18 C         1 h        2011    NA
# 19 C         1 h        2012    13
# 20 C         1 h        2013     2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

来自不平衡面板数据的R样本

来自分类Dev

如何使图像不平衡?

来自分类Dev

从不平衡面板到平衡面板

来自分类Dev

从不平衡面板到平衡面板

来自分类Dev

如何在R中的不平衡面板数据中创建自上次事件以来的时间?

来自分类Dev

如何在Pandas数据框中为不平衡面板生成滞后变量?

来自分类Dev

如何确定不平衡数据集的class_weights

来自分类Dev

如何处理R中不平衡的数据集?

来自分类Dev

使用TensorFlow训练不平衡数据

来自分类Dev

从长到宽的不平衡数据帧

来自分类Dev

如何将缺失的NA包括在不平衡面板数据集的R data.frame中?

来自分类Dev

如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

来自分类Dev

如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

来自分类Dev

在R中的不平衡面板数据中创建滞后变量

来自分类Dev

KMeans的不平衡因子?

来自分类Dev

PInvoke使堆栈不平衡

来自分类Dev

如何从不平衡数据创建一个新的平衡数据框以确保随机选择记录?

来自分类Dev

在单个条件下将不平衡的面板转换为平衡/丢弃多个观测值

来自分类Dev

重新采样不平衡数据集的数据框

来自分类Dev

R不平衡数据帧数据清理

来自分类Dev

如何创建一个新行,该行将向我显示R中不平衡面板数据集中某个组中的观察次数?

来自分类Dev

使用libSVM的SVM中的数据不平衡

来自分类Dev

不平衡训练数据集和回归模型

来自分类Dev

根据不平衡数据在ggplot中创建重叠直方图

来自分类Dev

在Spark MLlib中处理不平衡的数据集

来自分类Dev

迷你图数据帧不平衡

来自分类Dev

大型不平衡数据的机器学习模型建议

来自分类Dev

SAS中不平衡数据集的滚动窗口模型

来自分类Dev

带有不平衡数据的SKlearn SVM RBF

Related 相关文章

  1. 1

    来自不平衡面板数据的R样本

  2. 2

    如何使图像不平衡?

  3. 3

    从不平衡面板到平衡面板

  4. 4

    从不平衡面板到平衡面板

  5. 5

    如何在R中的不平衡面板数据中创建自上次事件以来的时间?

  6. 6

    如何在Pandas数据框中为不平衡面板生成滞后变量?

  7. 7

    如何确定不平衡数据集的class_weights

  8. 8

    如何处理R中不平衡的数据集?

  9. 9

    使用TensorFlow训练不平衡数据

  10. 10

    从长到宽的不平衡数据帧

  11. 11

    如何将缺失的NA包括在不平衡面板数据集的R data.frame中?

  12. 12

    如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

  13. 13

    如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

  14. 14

    在R中的不平衡面板数据中创建滞后变量

  15. 15

    KMeans的不平衡因子?

  16. 16

    PInvoke使堆栈不平衡

  17. 17

    如何从不平衡数据创建一个新的平衡数据框以确保随机选择记录?

  18. 18

    在单个条件下将不平衡的面板转换为平衡/丢弃多个观测值

  19. 19

    重新采样不平衡数据集的数据框

  20. 20

    R不平衡数据帧数据清理

  21. 21

    如何创建一个新行,该行将向我显示R中不平衡面板数据集中某个组中的观察次数?

  22. 22

    使用libSVM的SVM中的数据不平衡

  23. 23

    不平衡训练数据集和回归模型

  24. 24

    根据不平衡数据在ggplot中创建重叠直方图

  25. 25

    在Spark MLlib中处理不平衡的数据集

  26. 26

    迷你图数据帧不平衡

  27. 27

    大型不平衡数据的机器学习模型建议

  28. 28

    SAS中不平衡数据集的滚动窗口模型

  29. 29

    带有不平衡数据的SKlearn SVM RBF

热门标签

归档