あなたの質問はこのサンドボックスデータセットによって示されていると思います。
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 |
+-----------------------+
So. fillin
は、識別子と時刻のすべての交差組み合わせが存在することを保証する簡単な方法です。しかし、どのようなメリットがありますか?この例には示されていませんが、他の変数の値は欠損値としてのみ存在します。いくつかの状況では、補間を続行することは正当ですが、通常、不完全なパネルでしか生きていません。
どのようにこれらのソリューションを見つけるには?良い戦略の1つは、基本的なデータ管理コマンドがどのようなものであるかを見るために[D]マニュアルを見ることです。
謝罪やその他の個人的なコメントは、謙虚な謙虚さと寛大さを示しますが、問題をより明確にしません。可能な限りあなたの問題を明確にし、親善に信頼するだけです。 –