当模型中不存在列时,Proc logisitic会出错

时间:2016-12-05 23:17:45

标签: exception sas

我正在尝试运行proc逻辑回归。我有很多以'ST'和'RF'开头的预测器。所以我写了这样的模型语句

proc logistic data=x outest=y;
   model binary_variable (event='1')= age sex RF:  ST: lackfit;
  output out=x p=fitted_prob predprob=individual ;
run;

我已经在宏中提供了这个语句,并为多个场景运行此宏。我遇到了几个数据集,其中没有以ST开头的列,并且proc logistic引发了一个错误,就像这样

WARNING: No variables found beginning with 'ST' in data set
NOTE: The SAS System stopped processing this step because of errors.

如果有办法处理此类异常? proc logistic中的某种参数?谢谢!

1 个答案:

答案 0 :(得分:1)

在宏中,添加一些逻辑,检测每个输入数据集是否包含以这些前缀开头的任何列,并且仅当存在至少一个此类列时才将相应的通配符添加到模型语句。您可以从sashelp.vcolumn或proc sql等效dictionary.columns获取此信息。