2016-12-12 1 views
1

Я создаю эту макро переменную LOG_LIST и подаю ее с помощью списка значений и позже использую ее для моей логистической регрессии. Код ниже.Есть ли способ сбросить значение макропеременной в значение null в SAS

proc sql; 
    select name into :LOG_LIST separated by ' ' 
    from WORK.logcolumnslist; 
    quit; 

    proc logistic data=test_dataset; 
    model logistic_var= age sex &LOG_LIST.; 
    run; 

Есть несколько случаев, в которых набор данных work.logcolumnslist будет пустым, в этом случае я хотел бы в LOG_LIST принять значение нуля, так что моя логистическая регрессия не запороть. Я попробовал% Let утверждения и даже изменил значение макропеременной в таблице sashelp.vmacro, но это не сработало. Есть ли способ сбросить значение до нуля?

Спасибо!

ответ

1

Перед PROC SQL присвойте ему нулевое значение, используя %let.

%let log_list=; 
proc sql; 
    select name into :LOG_LIST separated by ' ' 
    from WORK.logcolumnslist; 
    quit; 
%put &=log_list.; 
+0

Cheeky, спасибо! –

Смежные вопросы