楼主: zorro2004
8155 8

merge如何实现多对一 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

35%

还不是VIP/贵宾

-

威望
0
论坛币
1 个
通用积分
2.8501
学术水平
1 点
热心指数
6 点
信用等级
0 点
经验
2259 点
帖子
77
精华
0
在线时间
118 小时
注册时间
2012-4-16
最后登录
2024-12-9

楼主
zorro2004 发表于 2016-4-11 17:48:14 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
假设A表有多条观测,打算将B表中某一条观测的值merge到A表的每一个观测,请教应当如何写
感谢!
二维码

扫码加我 拉你入群

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

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

关键词:Merge 如何实现 如何写 如何

沙发
maturing 学生认证  发表于 2016-4-11 21:04:48
merge m:1 x using file.dta。其余和1:1一样

藤椅
guanglei 发表于 2016-4-11 21:06:15
这种情况下最好是用PROC SQL,merge比较适用于一对一的情况

板凳
麦弥 发表于 2016-4-13 14:01:23
merge 可以实现一对一和多对一,proc sql比较适合多对多。针对你的这种情况,采用merge就可以了,注意先对数据集进行排序,找准by的变量

报纸
zorro2004 发表于 2016-4-14 10:32:40
麦弥 发表于 2016-4-13 14:01
merge 可以实现一对一和多对一,proc sql比较适合多对多。针对你的这种情况,采用merge就可以了,注意先对数 ...
因为B表上只有一个观测,merge过来的话只有第一行有内容,其余部分是空白的

地板
麦弥 发表于 2016-4-15 16:57:36
zorro2004 发表于 2016-4-14 10:32
因为B表上只有一个观测,merge过来的话只有第一行有内容,其余部分是空白的
两个数据集有没有联系啊,应该会有相同的变量吧,你可以把数据上传一下,让大家给看一下。一般情况下如果A数据集中有subject变量,B当中也有,则merge的时候A中所有subject和b相同的都会merge上去的

7
zorro2004 发表于 2016-4-18 10:30:36
麦弥 发表于 2016-4-15 16:57
两个数据集有没有联系啊,应该会有相同的变量吧,你可以把数据上传一下,让大家给看一下。一般情况下如果 ...
换个说法,我有一组变量,用summary对这组变量做了求和,现在我想把求和结果匹配到每个观测,以计算每条观测的占比

8
graceyudy 发表于 2016-4-19 16:12:57
zorro2004 发表于 2016-4-18 10:30
换个说法,我有一组变量,用summary对这组变量做了求和,现在我想把求和结果匹配到每个观测,以计算每条观 ...
proc sql一下子就出来了,select *,sum(var) as summary from table;就会把summary结果remerge到每一行最后啦~

9
lauchery 发表于 2017-7-27 01:48:49
zorro2004 发表于 2016-4-18 10:30
换个说法,我有一组变量,用summary对这组变量做了求和,现在我想把求和结果匹配到每个观测,以计算每条观 ...
There is no need to use merge procedure.  

data new_name; set old_name; sum_of_var= sum(var); run;
then the sum would be shown in every obs.

I cannot type Chinese using this laptop. Sorry.

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-29 15:02