Hello,
I have limited experience with hash objects and read a few articles, but still no luck in one problem I am trying to approach with hash objects.
The data:
Table_A to load in hash table (where Orig_Code is hash key):
| Orig_Code | New_Code |
|---|---|
| AB | BN |
| TY | YX |
| UO | UO |
| PE | PE |
| MK | LX |
| CC | WQ |
| TT | TT |
| JU | JU |
| OV | FZ |
Table_B to overwrite Orig_Code with New_Code values:
| ID | Color_Des | Orig_Code | Filler_1 | Filler_2 |
|---|---|---|---|---|
| 0000001 | Blue | CC | XXXXXX | YYYYYY |
| 0000002 | Red | TT | XXXXXX | YYYYYY |
| 0000003 | Red | OV | XXXXXX | YYYYYY |
| 0000004 | Green | OV | XXXXXX | YYYYYY |
| 0000005 | Purple | MK | XXXXXX | YYYYYY |
| 0000006 | Yellow | TY | XXXXXX | YYYYYY |
Table_C results after doing overwrite with hash objects:
| ID | Color_Des | Orig_Code | Filler_1 | Filler_2 |
|---|---|---|---|---|
| 0000001 | Blue | WQ | XXXXXX | YYYYYY |
| 0000002 | Red | TT | XXXXXX | YYYYYY |
| 0000003 | Red | FZ | XXXXXX | YYYYYY |
| 0000004 | Green | FZ | XXXXXX | YYYYYY |
| 0000005 | Purple | LX | XXXXXX | YYYYYY |
| 0000006 | Yellow | YX | XXXXXX | YYYYYY |
Here is where I am in the code:
data Table_C (drop = Orig_Code New_Code);
length Orig_Code $4. New_Code $4.;
if _n_ = 1 then do;
declare hash tempHsh(dataset: 'Table_A');
tempHsh.definekey('Orig_Code');
tempHsh.defineData('New_Code');
tempHsh.defineDone();
call missing (Orig_Code,New_Code);
end;
set Table_B;
rc=tempHsh.find();
if rc = 0 then ******** lost in this section...
run;
Any tips....to solve this problem? I appreacite the help.
Thanks
if rc=0 then orig_code=new_code;
if rc=0 then orig_code=new_code;
Cool! Thanks...
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.