楼主: peterpan_aus
2153 13

[原创博文] 请大家看看这个SAS怎么写 [推广有奖]

  • 5关注
  • 0粉丝

已卖:49份资源

讲师

61%

还不是VIP/贵宾

-

威望
0
论坛币
544 个
通用积分
6.5202
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
6198 点
帖子
214
精华
0
在线时间
855 小时
注册时间
2007-12-18
最后登录
2023-7-4

楼主
peterpan_aus 发表于 2012-7-26 13:26:14 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
有两组数据,一个是

ORIGIN_COUNTRYORIGIN_LOAD
DEU1.1
FRA0.98
GBR0.99
OTHER1.1



另外一个是
MakeCountry
MINIGBR
MINIGBR
VOLKSWAGENARG
VOLKSWAGENARG
VOLKSWAGENARG
VOLKSWAGENARG
CITROENFRA
PORSCHEDEU
VOLKSWAGENARG
CITROENFRA


怎么让他们 ORIGIN_LOAD加到第二个表里如果country = origin_country,否则的话就把other的值加到第二个里面。
看volkswagen 因为arg没在第一个表格里,所以他的origin_load就应该是other 的值 1.1。
有没有人知道的谢谢
!!!!!!!!


二维码

扫码加我 拉你入群

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

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

关键词:Country Origin Count Other Sched country

沙发
savagexu 发表于 2012-7-26 13:46:26
试试吧,写得不好,好久不用了,对于更大的数据集,可以采用循环语句,时间长了想不起来怎么用了。
令第一个数据集为a,第二个为b
data b; set b;
    if Country="DEU" or Country="FRA" or Country="GBR" then ORIGIN_COUNTRY=Country;
    else ORIGIN_COUNTRY="OTHER";
run;
proc sort data=a; by ORIGIN_COUNTRY;
proc sort data=b; by ORIGIN_COUNTRY;
data b; merge a b; by ORIGIN_COUNTRY; run;

藤椅
peterpan_aus 发表于 2012-7-26 13:58:36
先谢谢你了,但是好像有问题,因为每个country的loading是不一样的。但是还是感谢你哦

板凳
sunset1986 发表于 2012-7-26 14:05:37
个人同意上面的解释
不知道您目前碰到的问题是什么,可以share一下您的code么?
An honest tale speeds best being plainly told.
Cheers!

报纸
stormhoof 发表于 2012-7-26 14:10:22
proc sort data=a(rename=(origin_country=country));
by country;
run;
proc sort data=b;
by country;
run;

data c;
merge a(in=x) b(in=y);
by country;
if y then do; if origin_load =. then  origin_load=1.1;output;end;
run;
可能写得不好

地板
ziyenano 发表于 2012-7-26 14:22:51
proc sql;
create table c as
select b.*,(case when a.ORIGIN_LOAD is null then 1.1 else a.ORIGIN_LOAD end ) as ORIGIN_LOAD
from  ex2 b left join ex1 a on a.ORIGIN_COUNTRY=b.Country;
quit;

7
peterpan_aus 发表于 2012-7-26 14:23:39
谢谢楼上的,问题解决了

8
peterpan_aus 发表于 2012-7-26 14:24:47
但是万一以后other 是个变量又怎么解决呢?

9
ziyenano 发表于 2012-7-26 14:26:26
peterpan_aus 发表于 2012-7-26 14:24
但是万一以后other 是个变量又怎么解决呢?
具体怎么说?

10
peterpan_aus 发表于 2012-7-26 14:32:01
因为这里1.1是other的值,但是如果如果other的值每次运行的时候变了呢?简单说如果other 是一个变量怎么办?

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

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