【问题标题】:How to fill out observations using data from previous years in Stata? (Paneldata)如何在Stata中使用前几年的数据填写观察结果? (面板数据)
【发布时间】:2021-07-02 06:41:12
【问题描述】:

我有面板数据,但在某些观察中缺少有关出生年份的信息。由于在整个时间序列中每个 ID 的出生年份都没有不同,我想使用我不知道的命令填充空白点(否则我必须手动完成)

这里是一个例子


     +--------------------------------+
     |           ID   wave   birthy~r |
     |--------------------------------|
  1. | 010104101001      1       1965 |
  2. | 010104101001      2       1965 |
  3. | 010104101001      3       1965 |
  4. | 010104101001      4       1965 |
  5. | 010104101002      1       .    |
     |--------------------------------|
  6. | 010104101002      2       .    |
  7. | 010104101002      3       1963 |
  8. | 010104101002      4       1963 |
  9. | 010104102001      1       1954 |
 10. | 010104102001      2       .    |
     +--------------------------------+

在这种情况下,我想用第 6 行或第 7 行的信息自动替换第 5 行和第 6 行缺失的出生年份值。并将第 9 行的出生年份值粘贴到第 10 行。

【问题讨论】:

    标签: statistics stata panel-data


    【解决方案1】:
    bysort ID : egen min = min(birthyear) 
    by ID: egen max = max(birthyear) 
    list if min != max 
    
    bysort ID (birthyear) : replace birthyear = birthyear[1] if max == min 
    

    大部分代码只是检查出生年份没有矛盾的信息(而不是覆盖任何这样的信息)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-06-02
      • 1970-01-01
      • 1970-01-01
      • 2020-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多