Что я делаю, чтобы сгенерировать ошибку SAS: «Требуемый оператор не найден в выражении»?

#sas #sas-macro

Вопрос:

Следующий код генерирует вышеуказанную ошибку. Я ищу объяснения. Пожалуйста, помогите.

 %GLOBAL var;
%LET var = 1;

%MACRO test;
%IF amp;var. in (1,2) %THEN %DO;
    %PUT amp;var.;
%END;
%MEND;

%test;

ERROR: Required operator not found in expression: amp;var. in (1,2)
 

Ответ №1:

Используйте «В» в %, если необходимо изменить приведенный ниже код. или используйте функцию %индекса

 %GLOBAL var;
 %LET var = 1;

 %MACRO test;
 %IF **amp;var.=1 or amp;var.=2** %THEN %DO;
     %PUT amp;var.;
 %END;

 %if %index
 %MEND test;

 %test;