CONVERT 關鍵字 (RECODE 指令)

CONVERT 會將數字的字串表示法重新編碼為其數值表示法。

  • 如果關鍵字 CONVERT 在值規格之前,則會立即重新編碼具有數字的觀察值,並將空白重新編碼為系統遺漏值,即使您特別將空白重新編碼為某個值也一樣。
  • 若要將空白重新編碼為系統遺漏值以外的值,或將字串值重新編碼為非對應數值 (例如, '0' 到 10) ,您必須指定重新編碼規格 之前 關鍵字 CONVERT
  • RECODE 會轉換數字,如同使用 F 格式重新讀取變數一樣。
  • 如果 RECODE 發現無法轉換的值,它會掃描其餘的值規格。 如果該值沒有特定的重新編碼規格,則該觀察值的目標變數會是系統遺漏值。

範例

RECODE #JOB (CONVERT) ('-'=11) ('&'=12) INTO JOB.
  • RECODE 首先會將字串變數 #JOB 中的所有數字重新編碼為數字。 目標變數是 JOB
  • RECODE then specifically recodes the minus sign (the “eleven” punch) to 11 and the ampersand (or “twelve” punch in EBCDIC) to 12. 首先指定關鍵字 CONVERT 作為效率測量,以立即重新編碼具有數字的觀察值。 空白會重新編碼成系統遺漏值。
    RECODE #JOB (' '=-99) (CONVERT) ('-'=11) ('&'=12) INTO JOB.
  • 結果與上述範例相同,但空白會變更為 − 9 9。