我需要通过变量传递列名。
%let dsn=a1234;
data temp;
set &a1234;
if age>=20;
run;
其中“a1234”是我要使用的列名(存在于文件中);而不是字符串 a1234。
我想这样做的原因是在脚本顶部定义了所有参数,这使得代码更干净(在这种情况下)。
提前感谢您的任何反馈。
我需要通过变量传递列名。
%let dsn=a1234;
data temp;
set &a1234;
if age>=20;
run;
其中“a1234”是我要使用的列名(存在于文件中);而不是字符串 a1234。
我想这样做的原因是在脚本顶部定义了所有参数,这使得代码更干净(在这种情况下)。
提前感谢您的任何反馈。
尽管您的问题说a1234
是一列,但此答案将其视为数据集名称,如您的代码示例中使用的那样。
你很亲近;您创建了一个名为 a1234 的宏变量DSN
,但您试图引用一个名为A1234
. 换句话说,试试这个:
%let DSN=a1234;
data temp;
set &DSN;
if age>=20;
run;
为强调而大写。
您是在问这样做吗?
%let dsn=a1234;
%Let column=Age;
data temp;
set &a1234;
if &column>=20;
run;