2010-08-28 171 views
5

我發現這個paper上SAS包括(第一頁和其他一些地區的)下面的代碼行:.Z語法SAS

if trt1pn > .z then... 

我想知道它的目的可能是什麼。我從來沒有見過「.z」表達式。我雖然(和我的一些同事一樣)認爲這是一個錯字。但你可以做

data kk; 
    a = .z; 
    b = .b; 
run; 

你得到變量a等於「Z」,變量b等於「B」。

在SAS手冊中討論了哪些內容?這意味着什麼?爲什麼這樣用在紙上?

回答

5

SAS有28個不同的缺失值(。,._,.A-.Z)和'。'。是默認的。這些特殊的缺失值可以根據缺失值的原因來設置。數據點不適用,則可以使用'.N'。

此外,這些缺失值可以通過自定義格式(proc格式)輕鬆進行格式化。

Proc format; 
    Value Response 
    1='Yes' 
    0='No' 
    .U='Unsure' 
    .N='Not Applicable' 
    .R='Refused to Answer'; 
Run; 
+0

以下是來自SAS的更多信息:http://support.sas.com/documentation/cdl/en/lrcon/62955/HTML/default/viewer.htm#/documentation/cdl/en/lrcon/62955/HTML /default/a000992455.htm – 2010-08-30 13:34:01

4

對於數值變量,有28個不同的缺失值(._..A.B,...,.Z)。他們比所有數字「小」。其中最小的是點下劃線(._)和最大的點Z(.Z)。因此,行:

if trt1pn > .Z then ... 

可以使用本missing()函數重新寫成:

if not missing(trp1pn) then ... 

這是有點清晰。