sas宏的错误消息'unclosed%DO statement'用于比较两个数值

时间:2018-04-25 17:34:18

标签: macros sas

我正在使用下面的宏来比较两个数值作为练习的一部分。

sumsquarederror(i=1,i=2) = sum_j (( score(i=1) - score(i=2) )^2)

我收到以下错误: 有一个未公开的%DO声明。 该宏未编译。

请告诉我们解决问题的建议。感谢。

1 个答案:

答案 0 :(得分:1)

你没有在你的代码中声明/指示首先%if和%do条件会发生什么,也没有关闭%do with%end。尝试类似下面的内容。

%macro test;

    %if  &price_trd. < &max_price %then %do;
        %put something HERE;
    %end;
   %if  %sysevalf(&price_trd. > &max_price) %then %do;
      %put Pass HERE;
  %end;
 %mend;

%test;