我想基于folloing方式一个数组元素重新命名变量,与名来自另一个阵列
%let var= class name gender;
data want;
set have;
%global noof;
array point(*)$ %str(&var) ;
a=dim(point);
call symputx('noof',a);
array newvar(&noof);
do i=1 to &noof;
newvar(i)=translate(point(i),',','.');
end;
drop &var;
do i=1 to &noof;
rename newvar(i)=vname(point(i));
end;
运行重命名的数组变量;
我想将新变量重命名为第一个数组元素。
LOG:
rename newvar(i)=vname(point(i));
-
22
76
ERROR 22-322: Syntax error, expecting one of the following: -, :, =.
ERROR 76-322: Syntax error, statement will be ignored.
您不能在RENAME语句中使用函数。在开始使用宏变量或宏代码生成SAS代码之前,请先写出要生成的SAS代码。向我们展示您尝试生成的SAS代码。 – Tom
我认为标题说明了他想要的东西 - 他想用另一个数组的名称重命名数组中的变量。数据步骤中的代码对于这个问题是多余的。 – DomPazz
@DomPazz你是对的,我想我会改变这个问题。 – user3658367