Let's say I have a two columns, 1 with a bunch of names, and another with a bunch of dates:
data out; set in; %let d=400; array name{&d}; array indate{&d}; h=1; do i=1 to &d; if substr(name{i},1,4) in ("asdf", "jklo") then do; eh&h=indate{i} h=h+1; end; end; run;
This code is able to count the number of occurnaces of names "asdf" and "jklo" and set them for each observation as "h".
However, when I try to create the variable "eh&h" with &h to represent the h'th occurance of the names, it doesn't work.
How can I make it so the variable names created to set as indate contains the value of h for a given observation?
I tried even to create an array using the dimension of maximum number of h's in the dataset, but that didn't work either (and may have been the wrong idae). So i come here to see if there's something i'm just missing.
Thanks ahead of time.
Solved it myself, here's the code:
data out; set in; %let d=400; %let e=50; *Max dimensions for the number of h's; array name{&d}; array indate{&d}; array eh{&e}; h=1; do i=1 to &d; if substr(name{i},1,4) in ("asdf", "jklo") then do; eh{h}=indate{i} h=h+1; end; end; run;
Solved it myself, here's the code:
data out; set in; %let d=400; %let e=50; *Max dimensions for the number of h's; array name{&d}; array indate{&d}; array eh{&e}; h=1; do i=1 to &d; if substr(name{i},1,4) in ("asdf", "jklo") then do; eh{h}=indate{i} h=h+1; end; end; run;
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.