2014-03-05 62 views
0

我使用的Stata,並有兩個時期,T1和T2面板數據,面板數據出現一次。我也有一個獨特的標識符,如果這個人在兩個時期都有回覆,那麼這個標識符在整個時期都是不變的中進行觀察,只有

例如,如果person001完成在T1和T2的調查,回答每個週期都存儲下標識符person001。這導致數據集中的兩個條目具有相同的標識符,一個在t1下,另一個在t2下。

然而,有些人只完成了一個週期的調查,所以他們的標識符只出現在T1或T2。

我想辦法drop那些只出現在一個時期或其他。

我已經試過

drop if identifier[_n-1] != identifier if period == t2 

但這只是drop一切都T1的意見。

+0

請注意,您的聲明是非法的。第二個'if'應該是'&'。 –

回答

1

如果你的數據在長格式,嘗試

bysort identifier: drop if _N==1 

bysort identifier: keep if _N==2 

此排序由id變量的數據。 _N是一個跟蹤觀察次數的系統變量。 bysort前綴的by部分計算id的每個值的觀察值數量,而不是整個數據。然後你擺脫那些只出現一次的觀察結果,或者出現兩次的觀察結果。這些行動是等同的。