例如,在data步中,X="AAA",那么X的值就是【AAA】,而不是【"AAA"】,【AAA】就是字符串。
而在%let X=AAA中,【AAA】就是文本而不是字符串。
我的问题是,得到字符串AAA,如何变成文本AAA?
例如,在data步,一个方法就是call symput将字符串变成文本。但问题是call symput只能在data步结束之后才能用。
如何才能在同一个data步里将字符串变成文本?
为什么需要?例如下面例子,需要先排除X3是missing,剩余的变量判断X1=X2=X4是否成立。
那么通过if missing(变量名)=0 then Y=catx('=',Y,变量名)可以得到字符串X1=X2=X4。但这个字符串怎么转换成文本,以便在同一数据步中作如下条件判断呢?
if (X1=X2=X4) then xxx;
谢谢!
data X;
X1=1;
X2=1;
X3=.;
X4=1;
run;