#sas #conditional-statements #sas-macro
#sas #условные операторы #sas-макрос
Вопрос:
В моей макрофункции мне нужно передать условие в качестве параметра, могу ли я узнать, как передать подобное условие в sas
пример : where flag="YES"
%macro counts(con= ,out=);
proc sort data=ads(amp;con.) out=teaes_sev nodupkey;
by usubjid surtypen;
run;
proc freq data=teaes_sev noprint;
tables surtypen/out=teae1_sev;
run;
proc transpose data=teae1_sev out=amp;out.;
id surtypen;
var count;
run;
%mend;
%counts(con=where=(flag ="YES".),out=row1 );
Ответ №1:
Удалите лишний период ( .
), и код должен работать
Изменить
%counts(con=where=(flag ="YES".),out=row1 );
Для
%counts(con=where=(flag ="YES"),out=row1 );
Комментарии:
1. конечно, правильный ответ, но стандартом переполнения стека для опечаток является голосование за закрытие:site specific:typo, а затем упоминание опечатки в комментариях; если это просто опечатка, мы не хотим сохранять вопрос / ответ для потомков (если, возможно, это неочень распространенная опечатка из-за чего-то, кроме случайных нажатий клавиш).