全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1109 2
2016-07-24
data a;
input origin $ dest $ flightID $ date date9. rev1st revbusiness revecon;
cards;
ANC RDU IA03400 02DEC1999 15829 28420 68688
ANC RDU IA03400 14DEC1999 20146 26460 72981
ANC RDU IA03400 26DEC1999 20146 23520 59625
ANC RDU IA03401 09DEC1999 15829 22540 58671
ANC RDU IA03401 21DEC1999 20146 22540 65826
akl wtc ijahgk  21dec1999 23424 3445  34343
ams wyt It00879 10dec2001 34343 23243 23434
arn ewe werewr  10dec2000 11768 9375  38463
ath yth werhfdy  15nov1999 767688 678978 68669
;
data b;
input CITY & $ : 15. code  $ name & : $ 50.  country  & : $ 15. ;
cards;
auckland   akl   international   new zealand
amsterdam  ams   schiphol   netherlands
anchorage,ak  anc  anchorage international airport  usa
stockolm  arn  arlanda  sweden
atens(athinai)  ath  hellinikon international airport  greece
;
run;
/*利用数据集b里面的数据建立hash 对象*/
data b;
if 0 then set b (keep=code city name);
if _N_=1 then do;
declare hash airports (dataset:"work.b");
airports.definekey ("code");
airports.definedata ("city","name");
airports.definedone ( );
end;
set a;
airports.find(key:origin);
/*将airports数据集建立的hash对象与数据集a中的对应,依靠关键变量*/
origincity=city;
originairport=name;
run;
proc print;
run;


附件列表
360截图20160724100517067.jpg

原图尺寸 29.78 KB

360截图20160724100517067.jpg

二维码

扫码加我 拉你入群

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

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

全部回复
2016-7-25 09:54:35
你的A又没有放入HASH, 怎么FIND。。。。。。。。。。。。另外不是很理解你要干什么
二维码

扫码加我 拉你入群

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

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

2016-7-25 12:06:55
zqy458219593 发表于 2016-7-25 09:54
你的A又没有放入HASH, 怎么FIND。。。。。。。。。。。。另外不是很理解你要干什么
这是个练习题,利用数据集b做成hash对象,然后从a中找与hash对象对应的变量值。
错在了:一:,在数据集a中,的ANC在hash对象中找不到,因为建立hash对象时,大小写的问题
已经解决了,谢谢。
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群