【问题标题】:How to include variable defining total observations in a panel data set? [duplicate]如何在面板数据集中包含定义总观察值的变量? [复制]
【发布时间】:2021-11-04 18:03:45
【问题描述】:

这是我正在使用的面板数据集的示例:

library(data.table)
data <- data.table(ID = c(1,1,1,1,1,2,2,2,2),
                   crop = c(1,2,3,4,5,1,2,3,4))

ID, crop
1, 1
1, 2
1, 3
1, 4
1, 5
2, 1
2, 2
2, 3
2, 4

有几个 ID 变量,每个变量都有不同数量的观察(行),具体取决于它们拥有的 crop 的数量。

我想创建一个额外的变量来显示ID 的观察总数。所需的输出如下所示:

ID, crop, total
1, 1, 5
1, 2, 5
1, 3, 5
1, 4, 5
1, 5, 5
2, 1, 4
2, 2, 4
2, 3, 4
2, 4, 4

这可以在 R 中使用 data.table 吗?

【问题讨论】:

    标签: r data.table panel-data


    【解决方案1】:

    你可以使用

    library(data.table)
    
    data[, total := .N, by = ID]
    

    返回

       ID crop total
    1:  1    1     5
    2:  1    2     5
    3:  1    3     5
    4:  1    4     5
    5:  1    5     5
    6:  2    1     4
    7:  2    2     4
    8:  2    3     4
    9:  2    4     4
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-27
      • 2018-05-05
      • 1970-01-01
      • 2018-04-02
      • 1970-01-01
      • 2020-05-11
      • 2021-01-28
      相关资源
      最近更新 更多