我想使用宏在我的数据集中创建一个变量.变量名称包含空格.通常在SAS中,我必须用撇号括起名称:'var_name'n.在宏中,我试图用%(str)掩盖撇号:
例如:
%macro test(varname);
%str(')&varname.%str('n)=""
%mend;
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.
您可以使用%符号来转义单引号和%unquote解析引用的函数,如下所示:
%macro test(varname);
%unquote(%str(%'&varname.%'n))="";
%mend;
Run Code Online (Sandbox Code Playgroud)