I have a data set with many race variables, and the variables look like the attached picture.
I want to check if one of them is 'Y', other race variables are 'N', and print out any observations with two or more 'Y' in different race variables.
How do I write such code?
Thank you for the help!
Depending on your actual data usage Hispanic Ethnicity may not exclude any race and some systems with these variable allow for "more than one race" type data.
data want;
set have;
if countc(cats(h,w,b,a,ai,nhopi),'Y') >1;
run;
Where h,w,b,a,ai and nhopi are the names of your race variables and if they are actually character variables.
What this does is combine all of the variables into one string and then countc determines how many times the letter Y is in the result.
If you want to write code, you need to know the names of the variables in your data set.
If you want someone here to write code, you have to tell us the names of the variables.
@Astounding that was hilarious. Made me laugh. Nice one! lol
Depending on your actual data usage Hispanic Ethnicity may not exclude any race and some systems with these variable allow for "more than one race" type data.
data want;
set have;
if countc(cats(h,w,b,a,ai,nhopi),'Y') >1;
run;
Where h,w,b,a,ai and nhopi are the names of your race variables and if they are actually character variables.
What this does is combine all of the variables into one string and then countc determines how many times the letter Y is in the result.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.