如何查找公司是否切换了存在点

时间:2019-06-22 21:42:38

标签: stata

我有包含公司标识符,营业地点和国家/地区的数据。

例如:

clear
input long id int pop str3 country
64435 2344 "USA"
64435 2345 "USA"
64435 2346 "GER"
64435 2347 "GER"
64435 2348 "GER"
64436 2344 "FR" 
64436 2345 "FR" 
64437 2344 "USA"
64437 2345 "GER"
64437 2346 "GER"
64437 2347 "FR" 
64437 2348 "FR" 
64437 2349 "USA"
end

我要创建一个变量,该变量将指示公司是否根据国家/地区切换了业务存在点。我也想找出这种情况发生的频率。

请注意,我只想在国家/地区的每次开关中首次找到这些信息。

结果变量应如下所示:

0  
.  
1  
.  
.  
0  
.  
0  
1  
.  
2  
.  
3 

有人可以帮我吗?

1 个答案:

答案 0 :(得分:2)

以下对我有用:

bysort id (pop): generate result = sum(_n > 1) if country != country[_n-1]

list, separator(0)

     +---------------------------------+
     |    id    pop   country   result |
     |---------------------------------|
  1. | 64435   2344       USA        0 |
  2. | 64435   2345       USA        . |
  3. | 64435   2346       GER        1 |
  4. | 64435   2347       GER        . |
  5. | 64435   2348       GER        . |
  6. | 64436   2344        FR        0 |
  7. | 64436   2345        FR        . |
  8. | 64437   2344       USA        0 |
  9. | 64437   2345       GER        1 |
 10. | 64437   2346       GER        . |
 11. | 64437   2347        FR        2 |
 12. | 64437   2348        FR        . |
 13. | 64437   2349       USA        3 |
     +---------------------------------+