下面是一段程序,主要的目的是将数据集中的变量(有字符型和数值型)全部转为数值型,但转完后发现变量的顺序变了,数值型的在前面,字符型的在后面,想回复到原来的顺序,于是尝试使用retain(不知有没有什么好的方法)。结果程序提示没有任何解析符号引用retain,不知道是为什么,说来关于SAS的"&"不太理解,有没有什么启蒙贴之类....谢谢!
[code]
proc sql;
select catx('=','asd'||name,name)
, catx('=','asd'||name,label)
, cats('asd'||name,'=input(',name,',best12.)')
, name
into :rename separated by ' '
, :label separated by ' '
, :assign separated by ';'
, :drop separated by ' '
from dictionary.columns
where libname='WORK'
and memname='ZXC2';
quit;
data zxc3;
&drop;* 问题处;
set zxc2;
&assign;
rename &rename;
label &label;
drop &drop;
run;
不知为什么,现在好像好了.....