楼主: lzj学习stata
3485 11

[数据管理求助] 关于多对多合并数据 [推广有奖]

  • 1关注
  • 2粉丝

已卖:1份资源

硕士生

12%

还不是VIP/贵宾

-

威望
0
论坛币
277 个
通用积分
17.8515
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
901 点
帖子
72
精华
0
在线时间
167 小时
注册时间
2016-9-12
最后登录
2024-9-1

楼主
lzj学习stata 发表于 2017-4-11 15:01:59 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我有两份数据
1)adult信息
2)child 信息
两个数据共有的变量有很多
我希望用来匹配的变量是: HHID:表示家庭的ID; COMMID:表示社区的ID
那么其他共有的变量,比如LINE:表示个人在家庭中的编码(adult和child数据里都有此变量,但对于同一个HHID,两个数据里的LINE变量取值不同)
那么这种情况下用HHID和COMMID来对adult信息和child信息进行m:m的合并,LINE变量中的数据会被替代么?
不知我的问题描述清楚了么?还请高手指教下。
二维码

扫码加我 拉你入群

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

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

关键词:合并数据 commid Adult line Comm

回帖推荐

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

请试试

沙发
lzj学习stata 发表于 2017-4-11 15:02:53
补充说明一下:
adult中数据:
hhid06           commid06     line06
211101003    211101         101
211101008    211101            1
211101008    211101            2
211101008    211101            3


child中的数据:
hhid06            commid06     line06
211101003     211101        102
211101008     211101         61
211101008     211101         69

我希望合并后的效果是:
hhid06           commid06     line06
211101003    211101         101
211101003     211101        102
211101008    211101            1
211101008    211101            2
211101008    211101            3
211101008     211101         61
211101008     211101         69

该怎么做呢?
希望高手帮帮忙,很着急,这是我真实问题的简化,但是这个会了就解决了我的问题,麻烦大家了。

藤椅
黃河泉 在职认证  发表于 2017-4-11 15:34:50
lzj学习stata 发表于 2017-4-11 15:02
补充说明一下:
adult中数据:
hhid06           commid06     line06
这看起来是用 append 指令,请 help append 并见其说明与例子!

板凳
黃河泉 在职认证  发表于 2017-4-11 15:53:22
lzj学习stata 发表于 2017-4-11 15:02
补充说明一下:
adult中数据:
hhid06           commid06     line06
1.        请就如同美国Stata论坛一样,我建议本论坛也应强烈鼓励所有发问者利用 dataex (先 ssc install dataex 并见 https://bbs.pinggu.org/thread-5048204-1-1.html 说明) 将其之 Stata (部分) 资料列出 (可能的话,你要的结果型态),以供回答者练习或转post到美国Stata论坛之用(所以你的问题会得到解决)。
2.        当你 post 你的资料时,你应该选择你原始资料中具有代表性的一部分(除非你的资料很小,或自己编一下有代表性的变量与资料),包括足够的观察值以供程式练习与展示之用,而且也要确定包括了所有的变量!

报纸
lzj学习stata 发表于 2017-4-11 19:01:29
黃河泉 发表于 2017-4-11 15:34
这看起来是用 append 指令,请 help append 并见其说明与例子!
不太对啊 我查了help append 但是这个append就三个例子 全是把一个文件中数据追加到其他文件数据后面的 是纵向的叠加 而我这个是横向的叠加啊,,,并且有双变量的匹配 好像比append难多了 应该是用merge 但是我不会应merge多对多匹配 也没查到 虽然您没帮上 还是谢谢啦

地板
lzj学习stata 发表于 2017-4-11 19:02:08
黃河泉 发表于 2017-4-11 15:53
1.        请就如同美国Stata论坛一样,我建议本论坛也应强烈鼓励所有发问者利用 dataex (先 ssc install dataex ...
厉害啦 说的有道理

7
qq1032450349 发表于 2017-4-11 22:37:44
可以考虑用R的merge函数,help(merge)应该挺简单的

8
黃河泉 在职认证  发表于 2017-4-12 06:32:57
lzj学习stata 发表于 2017-4-11 19:01
不太对啊 我查了help append 但是这个append就三个例子 全是把一个文件中数据追加到其他文件数据后面的 是 ...
请试试
  1. * Example generated by -dataex-. To install: ssc install dataex
复制代码

9
黃河泉 在职认证  发表于 2017-4-12 06:40:22
lzj学习stata 发表于 2017-4-11 19:01
不太对啊 我查了help append 但是这个append就三个例子 全是把一个文件中数据追加到其他文件数据后面的 是 ...
请试试
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input double hhid06 float(commid06 line06)
  4. 211101003 211101 101
  5. 211101008 211101   1
  6. 211101008 211101   2
  7. 211101008 211101   3
  8. end
  9. save adult.dta, replace

  10. * Example generated by -dataex-. To install: ssc install dataex
  11. clear
  12. input double hhid06            commid06     line06
  13. 211101003     211101        102
  14. 211101008     211101         61
  15. 211101008     211101         69
  16. end
  17. append using adult.dta
  18. sort hhid06 line06
复制代码

10
lzj学习stata 发表于 2017-4-12 11:41:11
黃河泉 发表于 2017-4-12 06:40
请试试
谢谢您的热心帮忙!我发现是我理解错了。。。

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

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