Hello! I'm starting with sas base and I have a question.
I'm not able to find the way to create a new column which categorizes different words form other column in the same dataset.
I need to create a column (named category) with 3 different variables: "Clothes", "Bags" and "Other". So when the main column says t-shirt in the new category colum would say "clothes" if it says shoes the new columns would say other, etc
Clothes would search words like t-shirts, hats, etc
bags would search bagpacks, packs, etc
and other the rest of words
Thank you for the help!
Be aware of handling different cases of text like this:
data want;
set have;
if lowcase(main_column) in ('t-shirts', 'hoodies', 'hats') then do;
new_column = 'Clothes';
end;
else if lowcase(main_column) in ('bags', 'backpacks') then do;
new_column = 'Bags';
end;
else do;
new_column = 'Other';
end;
run;
Something like this? 🙂
data want;
set have;
if main_column in ('T-Shirt' /*, Insert other types of clothes here separated by , */) then do;
new_column = 'Clothes';
end;
else if main_column in ('Shoes') then do;
new_column = 'Other';
end;
else if main_column in ('Some Bags Name') then do;
new_column = 'Bags';
end;
run;
Not sure I understand completely, but you can put as many words inside the parenthesis as you want as below? 🙂
data want;
set have;
if main_column in ('T-Shirt' /*, Insert other types of clothes here separated by , */) then do;
new_column = 'Clothes';
end;
else if main_column in ('Shoes', 'Socks', 'Ties') then do;
new_column = 'Other';
end;
else if main column in ('Some Bags Name') then do;
new_column = 'Bags';
end;
run;
Ah, now I get it 🙂 Sure:
data want;
set have;
if main_column in ('T-shirts', 'hoodies', 'hats') then do;
new_column = 'Clothes';
end;
else if main_column in ('bags', 'backpacks') then do;
new_column = 'Bags';
end;
else do;
new_column = 'Other';
end;
run;
Anytime. Please mark my answer as a solution if it solved your problem 🙂 Regards.
Be aware of handling different cases of text like this:
data want;
set have;
if lowcase(main_column) in ('t-shirts', 'hoodies', 'hats') then do;
new_column = 'Clothes';
end;
else if lowcase(main_column) in ('bags', 'backpacks') then do;
new_column = 'Bags';
end;
else do;
new_column = 'Other';
end;
run;
Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.
Register today!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.
Select SAS Training centers are offering in-person courses. View upcoming courses for: