I have a dataset with Account Number that can be enrolled in a program. The data-set is monthly data. If it is enrolled the Enrolled_Flag = 1 else it is 0.
An account can only be enrolled at most once. How would I detect data issues with the file?
Account AAAA is okay, enrolled in second month.
Account_Number, Year_Month, Enrolled_Flag
AAAA, 202101, 0
AAAA, 202102,1
AAAA, 202103,1
Account BBBB is okay, enrolled and derollled in 4th month
Account_Number, Year_Month, Enrolled_Flag
1
1
1
0
Account CCC is okay always enrolled
1
1
1
1
Account DDDD is NOT okay, enrolled in 2nd month and then then enrolled in 4th month.
0
1
0
1
1
Something like this, I think:
data want;
set have;
by account enrolled notsorted;
if first.account then
n=enrolled;
else if first.enrolled then
n+enrolled;
if last.account;
if n>1 then
flag='ERROR';
else
flag=' ';
keep account flag;
run;
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!
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.