使用SAS中的%Dropmiss宏获取错误消息

问题描述 投票:0回答:1

我正在尝试使用sas中的%Dropmiss宏,该宏是从官方PDF https://support.sas.com/resources/papers/proceedings10/048-2010.pdf中找到的

但是,当我尝试使用它时,总是出现相同的错误:

错误:在需要数字操作数的%EVAL函数或%IF条件中找到了字符操作数。条件是:“%qtrim(&& CHARMAX&I)” eq“”

作为Macros的新手,我试图在各处找到一种解决方案,但到目前为止还没有。可能是什么问题?我应该怎么做或检查我的数据以解决问题。

谢谢,

sas macros eval
1个回答
0
投票

不确定您的宏,但是您不需要宏。那篇论文已经有十年历史了,所以这是一种更现代的方法。

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

© www.soinside.com 2019 - 2024. All rights reserved.