2016-12-20 72 views
0

我有一個非常大的數據集(100GB),需要在每組觀察值上運行PROC NLIN。 在某些情況下,該模型不能收斂產生一組警示線到日誌文件:從SAS日誌文件中抑制PROC NLIN警告

NOTE: PROC NLIN grid search time was 0: 0: 0. 
WARNING: PROC NLIN failed to converge. 
NOTE: Negative model SS. Check model and initial parameters. 
NOTE: The (approximate) Hessian is singular. 
NOTE: The above message was for the following BY group: obs=420 

從PROC NLIN的參數給我,我不能夠改變其中任何一個。所以這裏的建議(https://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/viewer.htm#statug_nlin_sect023.htm)在這種情況下不能遵循。

我做了以下只是調用PROC NLIN前:

options nonotes ; 
proc printto print='/dev/null' new; 
run; 

然而行「警告:PROC NLIN沒有收斂」仍然打印到日誌中。 有什麼辦法可以從SAS日誌文件中抑制此警告(或所有類似的警告)嗎?

這是在Linux OS上的SAS 9.3 TS1M2上。

附加說明:我們不會忽略NLIN錯誤 - 生成它們的條件被捕獲,我們最終將相應地過濾輸入數據集。現在我們試圖在沒有填滿SAS日誌文件的情況下運行所有​​數據。

回答

0

我正在發佈這個答案。這應該是顯而易見的,但萬一別人遇到這種情況。

proc printto print='/dev/null' log='/dev/null' new; 
run; 

我一直在使用打印=一部分,但不是一直:一個SAS程序中,你可以暫時使用以下語法(在Linux/Unix)重新引導警​​告和錯誤的輸出到不同的日誌文件日誌=部分。 要恢復正常運行日誌:

proc printto 
run;