After I ran the code below, macro variable &mnew=a,b,c.
How can I get &mnew=’a’,’b’,’c’ by modifing my code.
Thanks - Linlin
data have;
input c_id $;
cards;
a
b
c
;
data _null_;
set have end=last;;
length new $ 30;
retain new;
new=catx(',',new,c_id);
if last then
call symputx('mnew',new);
run;
%put &mnew;
If you can use double quote characters instead of single quote then use the QUOTE() function.
new=catx(',',new,quote(trim(c_id)));
If you need to use single quotes then
new=catx(',',new,"'"||trim(c_id)||"'");
If you can use double quote characters instead of single quote then use the QUOTE() function.
new=catx(',',new,quote(trim(c_id)));
If you need to use single quotes then
new=catx(',',new,"'"||trim(c_id)||"'");
Hi Tom,
Thank you very much!!! - Linlin
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!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.