楼主: yilan3638
25065 27

[面板数据求助] 如何用stata删除变量中的重复值,但保留重复值中的一个观测 [推广有奖]

  • 0关注
  • 0粉丝

大专生

21%

还不是VIP/贵宾

-

威望
0
论坛币
3 个
通用积分
0.0042
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
206 点
帖子
25
精华
0
在线时间
64 小时
注册时间
2014-10-5
最后登录
2018-10-27

楼主
yilan3638 发表于 2017-7-28 13:14:55 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
如何用stata删除变量中的重复值,但保留重复值中的一个观测值?
以下是我的数据 微信图片_20170728130523.png
数据没有全部贴出来,是做面板数据。
现在的问题就是:
第一个问题:比如说company5里面,id1取值有好几个1,现在想删掉重复的数,只保留month里最早的那个数据
更详细点就是想把company5中id1删掉只剩下一个1,并且对应的month为2007m8
第二个问题:有没有命令是可以对所有company有效的,总不能一个个company的输入命令吧。一共有150个公司呢。


问题描述的有点乱的样子,不知道各位高手能否了解小妹的意图。还请各位高手帮帮忙。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝


回帖推荐

黃河泉 发表于4楼  查看完整内容

1. 请按回复,我才会接到通知!2. 尔后请将中间所有的东西 copy 过来!3. 请试试

沙发
黃河泉 在职认证  发表于 2017-7-28 15:55:10
建議用 dataex (先 ssc install dataex 并见说明) 将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。例如
  1. dataex company id1 ipo month in 1/20
复制代码

藤椅
yilan3638 发表于 2017-7-28 21:56:36
以下是比较具有代表性的数据:
company id1 ipo month
1 0 375 528
1 1 375 564
1 2 375 567
1 3 375 573
1 1 375 588
1 2 375 591
1 3 375 636
1 3 375 640
1 3 375 645
2 1 372 562
2 2 372 563
2 3 372 568
2 3 372 593
2 3 372 596
2 3 372 636
2 3 372 654
3 1 388 669
4 1 377 663
4 1 377 670
5 1 444 571

希望达到的效果为
company id1 ipo month

1 0 375 528
1 1 375 564
1 2 375 567
1 3 375 573
2 1 372 562
2 2 372 563
2 3 372 568
3 1 388 669
4 1 377 663
5 1 444 571

板凳
黃河泉 在职认证  发表于 2017-7-29 08:12:01
yilan3638 发表于 2017-7-28 21:56
以下是比较具有代表性的数据:
company id1 ipo month
1 0 375 528
1. 请按回复,我才会接到通知!2. 尔后请将
  1. ----------------------- copy starting from the next line -----------------------

  2. 中间

  3. ------------------ copy up to and including the previous line ------------------
复制代码
中间所有的东西 copy 过来!3. 请试试
  1. sort company id1 month
  2. bys company id1: gen t = _n
  3. drop if t > 1
  4. drop t
复制代码

报纸
yilan3638 发表于 2017-7-29 13:11:10
黃河泉 发表于 2017-7-29 08:12
1. 请按回复,我才会接到通知!2. 尔后请将中间所有的东西 copy 过来!3. 请试试
您好,试过您发的代码,非常好用,已经达到我想要的结果了。谢谢。

地板
yilan3638 发表于 2017-7-29 13:11:13
黃河泉 发表于 2017-7-29 08:12
1. 请按回复,我才会接到通知!2. 尔后请将中间所有的东西 copy 过来!3. 请试试
您好,试过您发的代码,非常好用,已经达到我想要的结果了。谢谢。

7
yilan3638 发表于 2017-7-29 13:21:03
黃河泉 发表于 2017-7-29 08:12
1. 请按回复,我才会接到通知!2. 尔后请将中间所有的东西 copy 过来!3. 请试试
还有个问题想要请教下您。
我现在想要计算两个日期之间相隔多少月份。
单一的数值我可以计算。
比如:2009-03到1996-07
可以通过
di monthly(“2009-03”,“YM”)-monthly("1996-07","YM")
但如果我想要计算是的一整列下来的数据,应该通过什么命令。下面附带我的一些数据。

8
黃河泉 在职认证  发表于 2017-7-29 15:51:12
yilan3638 发表于 2017-7-29 13:21
还有个问题想要请教下您。
我现在想要计算两个日期之间相隔多少月份。
单一的数值我可以计算。
请用 dataex 将资料印出!

9
yilan3638 发表于 2017-7-29 17:02:38
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input int company float(id ipo month)
  4. 1 1 375 528
  5. 1 2 375 564
  6. 1 3 375 56
  7. 1 4 375 573
  8. 2 1 372 528
  9. 2 2 372 562
  10. 2 3 372 563
  11. 2 4 372 568
  12. 3 1 388 528
  13. 3 2 388 669
  14. 4 1 377 528
  15. 4 2 377 663
  16. 5 1 444 528
  17. 5 2 444 571
  18. 6 1 454 528
  19. 6 2 454 541
  20. 6 3 454 570
  21. 6 4 454 663
  22. 7 1 452 528
  23. 7 2 452 567
  24. end
  25. format %tm ipo
  26. format %tm month
复制代码

10
yilan3638 发表于 2017-7-29 17:06:39
yilan3638 发表于 2017-7-29 13:21
还有个问题想要请教下您。
我现在想要计算两个日期之间相隔多少月份。
单一的数值我可以计算。
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input int company float(id ipo month)
  4. 1 1 375 528
  5. 1 2 375 564
  6. 1 3 375 567
  7. 1 4 375 573
  8. 2 1 372 528
  9. 2 2 372 562
  10. 2 3 372 563
  11. 2 4 372 568
  12. 3 1 388 528
  13. 3 2 388 669
  14. 4 1 377 528
  15. 4 2 377 663
  16. 5 1 444 528
  17. 5 2 444 571
  18. 6 1 454 528
  19. 6 2 454 541
  20. 6 3 454 570
  21. 6 4 454 663
  22. 7 1 452 528
  23. 7 2 452 567
  24. end
  25. format %tm ipo
  26. format %tm month
复制代码

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-16 19:24