楼主: 模山范水
4442 14

[数据管理求助] 如何对两个数据表进行数据筛选 [推广有奖]

  • 3关注
  • 1粉丝

博士生

18%

还不是VIP/贵宾

-

威望
0
论坛币
366 个
通用积分
0.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
13750 点
帖子
27
精华
0
在线时间
476 小时
注册时间
2016-5-7
最后登录
2025-10-18

楼主
模山范水 发表于 2018-7-28 17:13:44 |AI写论文
10论坛币
现在有表1和表2两个表,请问如何剔除掉表1中变量j和变量hs6同时与表2重复的数据。。。谢谢了!
表1数据:
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input int t long hs6 int(i j) double(v q)
  4. 2014 150200 156 784    99.25       25
  5. 2014 150420 156 784  215.307    26.96
  6. 2014 150590 156 784 60.65521  6.61325
  7. 2014 150790 156 784 113.2763   89.025
  8. 2014 150810 156 784    1.758      .95
  9. 2014 150910 156 784 2.245993  .298386
  10. 2014 150990 156 784    6.394     .714
  11. 2014 151519 156 784       30        4
  12. 2014 151530 156 784 84.01221   54.589
  13. 2014 151550 156 784 306.9667 104.3039
  14. 2014 151590 156 784 3.748532 .8699623
  15. 2014 151620 156 784 9.866819    3.314
  16. 2014 151790 156 784 32.68104 3.877487
  17. 2014 151800 156 784 390.0121 279.3145
  18. 2014 151911 156 784  25.3148 29.41129
  19. 2014 151919 156 784 8.624405   19.224
  20. 2014 151920 156 784 41.07375   18.246
  21. 2014 152090 156 784 93.37881 110.3304
  22. 2014 152110 156 784    3.437        1
  23. 2014 150990 156 204 21.85137    49.41
  24. 2014 151620 156 204 116.6803   523.87
  25. 2014 151800 156 204  130.507    16.75
  26. 2014  41000 156  76     5.85      .06
  27. 2014 200310 156  52 1.418057 1.468198
  28. 2014 200540 156  52 1.224882     .952
  29. 2014 200590 156  52  61.2713 42.33994
  30. 2014 200830 156  52 1.870421    2.398
  31. 2014 200840 156  52 9.848305 9.875338
  32. 2014 200870 156  52  9.63008 10.51152
  33. 2014 200892 156  52  3.11978    2.118
  34. 2014 210310 156  52  4.57485 2.616512
  35. 2014 210390 156  52 7.862027 2.563166
  36. 2014 210690 156  52  42.6191 12.26482
  37. 2014 220210 156  52 180.8558  132.804
  38. 2014 220300 156  52 7.382845   22.724
  39. 2014 220429 156  52 5.574136    2.692
  40. 2014 230990 156  52 4.835567 2.866537
  41. 2014 240110 156  52  39.3013    10.32
  42. 2014 330119 156  52    3.294     .643
  43. 2014 350520 156  52 5.865518    4.747
  44. end
复制代码
表2数据:
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input int j str3 reporter int Partner_ISO_N str3 partner long hs6 int(t number) byte country str1 i int ii
  4. 784 "ARE" 156 "CHN" 150200 2013 663 1 "b" 168
  5. 784 "ARE" 156 "CHN" 150420 2013 663 1 "b" 168
  6. 204 "BEN" 156 "CHN" 150990 2008 609 2 "b"  67
  7. 204 "BEN" 156 "CHN" 151620 2008 609 2 "b"  67
  8. 76 "BRA" 156 "CHN"  41000 2008  77 4 "d"  29
  9. 52 "BRB" 156 "CHN" 200310 2014 184 5 "c"  47
  10. 52 "BRB" 156 "CHN" 200540 2014 184 5 "c"  47
  11. end
复制代码

最佳答案

momingqimiao7 查看完整内容

我来试一下,假设第一个表为table1.dta, 第二表为table2.dta
关键词:Stata Stata专版 stata面板中 stata数据处理

回帖推荐

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

这个论坛上与美国 Stata 论坛上,已有许多人强烈建议,绝对不要用 merge m:m,错的机会很高。

沙发
momingqimiao7 在职认证  学生认证  发表于 2018-7-28 17:13:45
我来试一下,假设第一个表为table1.dta, 第二表为table2.dta
  1. use table1.dta, clear
  2. merge m:m j hs6 using table2.dta, keepusing(j hs6)
  3. keep if _m==1
  4. drop _m
复制代码


已有 1 人评分论坛币 热心指数 收起 理由
逐梦的太阳 + 5 + 5 热心帮助其他会员

总评分: 论坛币 + 5  热心指数 + 5   查看全部评分

常用控制变量 https://bbs.pinggu.org/thread-15164021-1-1.html

藤椅
模山范水 发表于 2018-7-28 21:54:17
momingqimiao7 发表于 2018-7-28 21:32
我来试一下,假设第一个表为table1.dta, 第二表为table2.dta
已经解决了,谢谢~ 没有用到第二步的keepusing(j hs6),请问这个命令的作用是...

板凳
momingqimiao7 在职认证  学生认证  发表于 2018-7-28 22:06:16
模山范水 发表于 2018-7-28 21:54
已经解决了,谢谢~ 没有用到第二步的keepusing(j hs6),请问这个命令的作用是...
就是只使用了table2的j和hs6变量,如果不加的话就是所有的变量都匹配进去

报纸
模山范水 发表于 2018-7-28 22:26:36
momingqimiao7 发表于 2018-7-28 22:06
就是只使用了table2的j和hs6变量,如果不加的话就是所有的变量都匹配进去
嗯嗯,谢谢啦~

地板
黃河泉 在职认证  发表于 2018-7-29 08:53:45
这个论坛上与美国 Stata 论坛上,已有许多人强烈建议,绝对不要用 merge m:m,错的机会很高
已有 1 人评分论坛币 热心指数 收起 理由
逐梦的太阳 + 5 + 5 热心帮助其他会员

总评分: 论坛币 + 5  热心指数 + 5   查看全部评分

7
蓝色 发表于 2018-7-29 09:06:16
同意楼上的
不能用merge m:m
已有 1 人评分热心指数 收起 理由
逐梦的太阳 + 5 热心帮助其他会员

总评分: 热心指数 + 5   查看全部评分

8
模山范水 发表于 2018-7-29 10:07:56
黃河泉 发表于 2018-7-29 08:53
这个论坛上与美国 Stata 论坛上,已有许多人强烈建议,绝对不要用 merge m:m,错的机会很高。
黄老师,请问有其他的办法可以做出来吗。。谢谢

9
模山范水 发表于 2018-7-29 10:15:41
蓝色 发表于 2018-7-29 09:06
同意楼上的
不能用merge m:m
好吧...请问还有其他办法能做吗,谢谢啦。

10
黃河泉 在职认证  发表于 2018-7-29 10:20:03
模山范水 发表于 2018-7-29 10:07
黄老师,请问有其他的办法可以做出来吗。。谢谢
应该是 merge m:1 或 merge 1:m (其实意思是一样的),但因为不知道你原先要利用什么变量 (uniquely identify) 来合并,所以尚不知如何建议?

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-31 11:58