2017-05-29 59 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”数据并且无法处理纯副本。 –