2017-05-29 56 views
0

對於下面的數據集內。例如:Stata的重複5分鐘TRANGE

11-12-2014 21:59 
11-12-2014 21:59 
11-12-2014 22:00 
11-12-2014 22:06 

我需要認爲這相距不到五分鐘爲重複觀察和在一個「bysort」命令之後使用它們。有誰知道我可以如何定義重複數據是相隔5分鐘的觀測結果?

+1

回答這個問題的關鍵是知道如何在21:00,21:04和21:08處理觀測結果。每個距離相鄰觀測4分鐘,但第一個和第三個相隔8分鐘。 – 2017-05-29 11:10:08

+0

@William,briliant問題。我可能會同意大多數解決方案。理想情況下,最小值爲5分鐘,21:00爲原始,21:04爲重複,21:08爲新原創。 – Msh

+0

另一個困難是,按時間丟棄重複可能是任意的其他變量。你的第一次和第二次觀察具有相同的時間,但是它們在所有其他變量上是否具有相同的值。 –

回答

2

這是一個不完整的答案,因爲爲了清晰起見,我使用簡單的數字而不是Stata時間值。但它顯示了基本的想法。

clear 
input float x 
1 
3 
9 
13 
17 
end 
generate run = 0 
replace run = x in 1 
replace run = cond(x<=run[_n-1]+5,run[_n-1],x) if _n>1 

其給出以下結果,顯示出可變run標識套「複製」你的標準的意見。

. list 

    +----------+ 
    | x run | 
    |----------| 
    1. | 1  1 | 
    2. | 3  1 | 
    3. | 9  9 | 
    4. | 13  9 | 
    5. | 17 17 | 
    +----------+ 
+0

另請參閱SSC上的「panelthin」,只是它假定「tsset」數據並且無法處理純副本。 –