我有一個「原始」數據集,我正在嘗試清理。該數據集由2000年至2010年間變量爲age
的個體組成。數據集中存在大約20000個具有相同問題的個體。如何使用foreach/forv以遞增順序替換重複項
變量age
在2004 - 2006年沒有增加。例如,對於一個個體,它看起來像這樣:
2000: 16,
2001: 17,
2002: 18,
2003: 19,
2004: 19,
2005: 19,
2006: 19,
2007: 23,
2008: 24,
2009: 25,
2010: 26,
到目前爲止,我已經試過產生變量的最大年齡和最大年份:
bysort id: egen last_year=max(year)
bysort id: egen last_age=max(age)
然後用foreach
與滯後相結合,嘗試更換age
變量遞減的順序,這樣,當新的變量last_age
(現在在所有年份中26),而像這樣:
2010: 26
2009: 25 (26-1)
2008: 24 (26-2) , and so on.
但是,我發現爲這個問題尋找正確的代碼有一些問題。
謝謝您的答覆。備選方案2工作:) –