楼主: fgkjvbk
887 4

[数据管理求助] stata求助!如何从第一个数据集遍历变量的值,然后再从第二个数据集中删掉遍历的值 [推广有奖]

  • 3关注
  • 0粉丝

本科生

99%

还不是VIP/贵宾

-

威望
0
论坛币
30 个
通用积分
3.8346
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
631 点
帖子
46
精华
0
在线时间
156 小时
注册时间
2020-12-23
最后登录
2024-9-19

楼主
fgkjvbk 学生认证  发表于 2021-9-10 20:37:35 |AI写论文
40论坛币
各位老师们好!

我有两组数据,存为两个dta文件,因为数据量很大,这里只是举例说明:变量为 id、year、cindex。

第一个dta文件:
id           year        cindex
123      2005             7
456      2007             8
789      2007             6
345      2007             4
345      2004             3
678      2003             8
463      2000             1
321      2001             6

第二个dta文件:
id           year        cindex
123      2005             7
456      2007             8
789      2007             6


需要遍历第二个文件中id的值,然后从第一个文件中删掉这些值
得到第三个文件:
id           year        cindex
345      2007             4
345      2004             3
678      2003             8
463      2000             1
321      2001             6


请问如何写命令,希望各位能给我指导,感激不尽!


关键词:stata求助 Stata tata 数据集 Index

沙发
wdlbcj 学生认证  发表于 2021-9-11 10:30:26
可以尝试将两个文件进行merge,merge成功的部分都删除即可

藤椅
fgkjvbk 学生认证  发表于 2021-9-12 19:16:42
wdlbcj 发表于 2021-9-11 10:30
可以尝试将两个文件进行merge,merge成功的部分都删除即可
可否麻烦您详细写下具体的命令呢,merge之后我就不知道怎么操作了,谢谢!

板凳
wdlbcj 学生认证  发表于 2021-9-12 20:36:59
fgkjvbk 发表于 2021-9-12 19:16
可否麻烦您详细写下具体的命令呢,merge之后我就不知道怎么操作了,谢谢!
你好,
1. merge之后会生成一个新的变量 _merge
2. 这个_merge会有1 2 3 不同的取值 对应不同的含义,具体可以在merge之后会显示的
3. 应该_merge==3 是表示合并成功,即对应你的数据中需要删除的部分
4. 所以你在merge之后 应该执行的是 drop if _merge==3

报纸
fgkjvbk 学生认证  发表于 2021-9-12 20:46:41
wdlbcj 发表于 2021-9-12 20:36
你好,
1. merge之后会生成一个新的变量 _merge
2. 这个_merge会有1 2 3 不同的取值 对应不同的含义,具 ...
好的,谢谢您,我去试一下,另外如果合并的两张表,表2是表1中的一个子集,这个解决方法也适用吗?

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

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