Hello,
I am trying create a variable that would list names for my interaction variable. Specifically, I have a list of names of my IVs, and I want to create a list of names of my IVs by Gender.
The table I have with IVs' names looks like this:
IV_name
Race
Age
SES
Education
The table I want should look like this:
IV_name Interaction_name
Race Race_BY_Gender
Age Age_BY_Gender
SES SES_BY_Gender
Education Education_BY_Gender
Here is what I tried but it doesn't work...
data set2;
set set1;
call execute('Interaction_name = '||strip(IV_name)||'_BY_Gender;');
run;
What am I doing wrong?
Thank you in advance.
Just use straight concatenation. No need for CALL EXECUTE.
data set1;
length IV_name $10;
input IV_name $;
datalines;
Race
Age
SES
Education
;
data set2;
set set1;
Interaction_name = catt(IV_name, '_BY_Gender');
run;
proc print data=set2 ;run;
Just use straight concatenation. No need for CALL EXECUTE.
data set1;
length IV_name $10;
input IV_name $;
datalines;
Race
Age
SES
Education
;
data set2;
set set1;
Interaction_name = catt(IV_name, '_BY_Gender');
run;
proc print data=set2 ;run;
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
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.