我正在尝试使用sas中的%Dropmiss宏,该宏是从官方PDF https://support.sas.com/resources/papers/proceedings10/048-2010.pdf中找到的
但是,当我尝试使用它时,总是出现相同的错误:
错误:在需要数字操作数的%EVAL函数或%IF条件中找到了字符操作数。条件是:“%qtrim(&& CHARMAX&I)” eq“”
作为Macros的新手,我试图在各处找到一种解决方案,但到目前为止还没有。可能是什么问题?我应该怎么做或检查我的数据以解决问题。
谢谢,
不确定您的宏,但是您不需要宏。那篇论文已经有十年历史了,所以这是一种更现代的方法。
ods select none;
ods output nlevels=temp;
proc freq data=have nlevels;
tables _all_;
run;
proc sql;
select tablevar into : drop separated by ','
from temp
where NNonMissLevels=0;
alter table data&i
drop &drop;
quit;
原始来源,因为不是我的代码:https://communities.sas.com/t5/SAS-Programming/deleting-empty-columns/m-p/308045