2016-07-07 76 views
2

新的SAS編程here..in .NET初始化多個變量,我們可以在同一行分配一個值,多個變量,像這樣:在一行SAS

var1 = var2 = var3 = 0;

有在SAS語法做相當於?

+0

你不需要初始化SAS變量,你想要做什麼,需要初始化?如果總和,則使用SUM()函數,而忽略缺失值或缺少初始化。 – Reeza

回答

1

據我所知,SAS不支持多任務。

SAS評估var1 = var2 = var3 = 0;var1 = (var2 = var3 = 0);,如果var2 = var3 = 0var1,則返回值爲1,否則返回0。

2

編號

但還有其他方法可以完成這種類型的事情。

最常見的是使用ARRAY和DO循環。

array varlist var1 var2 var3 ; 
do i=1 to dim(varlist); 
    varlist(i)=0; 
end; 

您可以使用ARRAY語句初始化變量。

array varlist var1 var2 var3 (3*0); 

但是,這隻適用於數據步驟第一次迭代的初始值。

或者你可能很有創意,並使用宏功能來生成代碼。

%sysfunc(tranwrd(var1|var2|var3|,|,%str(=0;))) 

如果您想要設置缺少的值,可以使用CALL MISSING()函數。

call missing(of var1 var2 var3);