问候SAS专家,
我有很多不同的陈述,结构如下:
if item = '0123' then e123 = data1; if item = '0541' then r541 = data2;
变量项包含数字的字符值。
我有很多像上面那样的行,我想在数据步骤中编写一个宏,允许我做这样的事情
%macro ifcondition(newitem);
if item = '&newitem' then E&newitem = data1;
if item = '&newitem' then R&newitem = data2;
%mend;
%ifcondition(0123);
所以我想要这个的众多变种......
%ifcondition(0123);
评估这个:
if item = '0123' then E0123 = data1; if item = '0123' then R0123 = data2;
我可以修改此内容的最简单方法是什么?
谢谢!
答案 0 :(得分:0)
只需使用双引号,这对我有用:
data want;
input item $ try $ try2 $;
datalines;
0100 abcd aa
0101 pipp bb
0102 plut cc
2000 gian dd
2001 luca ee
2002 tryu ff
3007 troy gg
3156 boss hh
;
%macro ifcondition(newitem);
if item = "&newitem" then E&newitem. = try;
if item = "&newitem" then R&newitem. = try2;
%mend;
data want1;
set want;
%ifcondition(0101);
%ifcondition(3007);
run;