Time 正在扩展当前范围之外的日期

Time 正在扩展当前范围之外的日期,time,stata,Time,Stata,我正在尝试扩展一个数据集,以包含当前范围之外的日期 我掌握的数据范围从1992年第一季度到2017年第一季度。每个观察都存在于较大窗口的一部分中,例如从1993年第2季度到1997年第1季度 我需要为每个范围创建季度观察,以填补缺失的时间。我已经将现有数据扩展到季度 我不知道该怎么做的就是把那些丢失的四分之一加进去。例如,country1的日期可能为1993q2到1997q1。我需要加上缺少的日期,从1992年第一季度到1993年第一季度,从1997年第二季度到2017年第一季度 这个沙箱数据集

我正在尝试扩展一个数据集,以包含当前范围之外的日期

我掌握的数据范围从1992年第一季度到2017年第一季度。每个观察都存在于较大窗口的一部分中,例如从1993年第2季度到1997年第1季度

我需要为每个范围创建季度观察,以填补缺失的时间。我已经将现有数据扩展到季度


我不知道该怎么做的就是把那些丢失的四分之一加进去。例如,country1的日期可能为1993q2到1997q1。我需要加上缺少的日期,从1992年第一季度到1993年第一季度,从1997年第二季度到2017年第一季度

这个沙箱数据集显示了一个非常简单的类似于我想你的问题

clear 
set obs 10 
gen id = cond(_n < 7, 1, 2) 
gen qdate = yq(1992, 1) in 1 
replace qdate = yq(1992, 3) in 7 
bysort id (qdate) : replace qdate = qdate[_n-1] + 1 if missing(qdate) 
format qdate %tq 
list, sepby(id) 

     +-------------+
     | id    qdate |
     |-------------|
  1. |  1   1992q1 |
  2. |  1   1992q2 |
  3. |  1   1992q3 |
  4. |  1   1992q4 |
  5. |  1   1993q1 |
  6. |  1   1993q2 |
     |-------------|
  7. |  2   1992q3 |
  8. |  2   1992q4 |
  9. |  2   1993q1 |
 10. |  2   1993q2 |
     +-------------+

fillin id qdate 
list, sepby(id) 

     +-----------------------+
     | id    qdate   _fillin |
     |-----------------------|
  1. |  1   1992q1         0 |
  2. |  1   1992q2         0 |
  3. |  1   1992q3         0 |
  4. |  1   1992q4         0 |
  5. |  1   1993q1         0 |
  6. |  1   1993q2         0 |
     |-----------------------|
  7. |  2   1992q1         1 |
  8. |  2   1992q2         1 |
  9. |  2   1992q3         0 |
 10. |  2   1992q4         0 |
 11. |  2   1993q1         0 |
 12. |  2   1993q2         0 |
     +-----------------------+
所以。fillin是确保标识符和时间的所有交叉组合都存在的一种简单方法。然而,有什么好处呢?尽管本例中未显示,但其他变量的值仅作为缺少的值而存在。在某些情况下,继续插值是合理的,但通常情况下,您只能使用不完整的面板

如何找到这样的解决方案?一个好的策略是浏览[D]手册,看看有哪些基本的数据管理命令