data aaa;
input x y;
cards;
1 2
3 4
;
run;
%macro aaa;
data _null_;
set aaa;
do i=1 to 2;
if _N_ =i then do;
call symput('Value',x);
call symput('TagValue',y);
%put &value;
%put &tagvalue;
end;
end;
run;
%mend;
%aaa;
Результаты были 3 4, а не 1 2 3 4. Как выполнить цикл для извлечения значений из набора данных? Благодарю вас!
&Value
быть1 3
, а&TagValue
должен быть2 4
? Ожидаете ли вы, что&Value
и&TagValue
будут массивами (что невозможно, но вы можете создать&Value1
,&Value2
&TagValue1
и&TagValue2
, а затем написать%do suffix = 1 %to 2; blabla; %end;
)? Возможно, вы должны объяснить нам, что вы хотите делать с ними потом. - person Dirk Horsten   schedule 18.01.2015