2016-02-04 64 views
0

我試圖用逐個字符或數字值來替換特定的變量值。如何用另一個值,字符和數字替換變量值?

我改變到的值代碼 「無」 到 「NULL」 如下:

DATA tp_01_pa_remove_no; 
    SET tp_01_pa_renamed; 
    IF variable_name="no" THEN "NULL"; 
RUN; 

我也想更換其他值:

DATA tp_01_pa_remove_nulls; 
SET tp_01_pa_renamed; 
IF PAFB_OTHERACTIV_4A1="no" OR "none" OR "None" OR "N/A" THEN PAFB_OTHERACTIV_4A1="NULL"; 

RUN;

回答

0

要重命名的變量,其值是恰好no,可以執行以下操作:

data tp_01_pa_remove_no; 
    set tp_01_pa_renamed; 

    if(variable_Name = "no") then variable_name = "NULL"; 
run; 

這是假設variable_name具有至少爲4

+0

太好了。謝謝!如果我想改變其他變量呢? DATA tp_01_pa_remove_nulls; SET tp_01_pa_renamed; \t IF variable_name =「NULL」THEN variable_name_2 = 0 AND variable_name_3 = 0; RUN; – Maldini

+0

@jcorroon這是一個基本的問題,我認爲您需要閱讀一些SAS書籍/文檔或甚至SAS文檔。如果你不知道如何去做條件語句或DO/END,那麼編程是一件非常困難的事情。 – Joe

0

的長度作爲替代方案,如果已經習慣了Excel,有IFN和IFC,這些都是excel風格的陳述。第一個參數是'if'條件,第二個返回'如果爲true',第三個返回'if false',第四個參數是'如果丟失/ null'(通常不會發生)。

data want; 
    set have; 
    variable_name = ifc(variable_name='no','NULL',variable_name); 
run; 

干擾素當然會返回數字。 (順便說一下,這兩個語句都不在乎第一個參數是什麼類型。)

相關問題