我正在使用下面的宏来比较两个数值作为练习的一部分。
sumsquarederror(i=1,i=2) = sum_j (( score(i=1) - score(i=2) )^2)
我收到以下错误: 有一个未公开的%DO声明。 该宏未编译。
请告诉我们解决问题的建议。感谢。
答案 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;