自動重新編碼

「自動重新編碼」對話框可讓您將字串或數值轉換成連續整數。 當類別代碼不連貫時,所造成的空格會減低效能,並且讓很多程序需要更多的記憶體才能執行。 此外,有些程序無法使用字串變數,有些程序則會用到因素層級的連續整數值。

  • 您透過「自動重新編碼」所建立的新變數,會保留任何舊變數定義過的變數 (或數值標籤)。 若未定義數值標籤,則會使用原值當成其重新編碼後的數值標籤。 表格會顯示舊值、新值跟數值標籤。
  • 字串值會根據字母順序重新編碼 (大寫字母會排在小寫字母前面)。
  • 遺漏值會以原順序重新編碼成高於所有非遺漏值的新遺漏值。 例如,如果原始變數有 10 個非遺漏值的話,那麼新變數的遺漏值將是 11。

對所有變數使用相同的重新編碼方法。 此選項可讓您將單一自動重新編碼方法套用至所有選取的變數,使得所有新的變數有一致的編碼方法。

若您選擇此選項,將套用以下規則和限制:

  • 所有變數的類型(數字或字串)都必須相同。
  • 所有選取變數的觀察值會用來建立數值的排列順序,以便重新編碼為連續整數。
  • 新變數的使用者遺漏值是根據清單中的第一個變數,其清單含有已定義的使用者遺漏值。 除系統遺漏值外,所有其他原始變數的數值都會被視為有效。

將空白字串值視為使用者遺漏值。 不會視字串變數,空白或空數值為系統遺漏值。 此選項會將空白字串自動重新編碼成高於最高非遺漏值的使用者遺漏值。

範本

您可以將自動重新編碼方法儲存成範本檔案,然後套用至其他變數和其他資料檔。

例如,您可能擁有每個月自動重新編碼為整數的大量文數字產品代碼,但在部分月份中,新加入的產品代碼會變更原本的自動重新編碼方法。 如果您將原始的架構儲存成範本,然後套用至含新代碼集的新資料中,則任何資料中遇到的新代碼將自動重新編碼成高於範本中最後一個數值的數值,如此可保留原始產品代碼所使用的原始自動重新編碼架構。

另存範本。 儲存在外部範本檔案中所選取變數的自動重新編碼架構。

  • 範本包含將原始非遺漏值對應至重新編碼數值的資訊。
  • 唯有非遺漏值的資訊可儲存於範本中。 不會保留使用者遺漏值資訊。
  • 如果您已選取多個變數進行重新編碼,但您未選取使用與所有變數相同的自動重新編碼方法,或是您沒有套用現有的範本作為自動重新編碼的一部分,則範本會以清單中的第一個變數為依據。
  • 如果您已選取多個變數進行重新編碼,而且您也選取「對所有變數使用相同的重新編碼方法」,和/或您已選取「套用範本」,則範本將包含所有變數的自動重新編碼方法組合。

套用範本來源。 將先前儲存的自動重新編碼範本套用至選取要重新編碼的變數,將變數中發現的任何其他數值附加到架構的結尾處,以及保留已儲存的架構中原始和自動重新編碼數值間的關係。

  • 所有選取要重新編碼的變數必須是相同的類型 (數字或字串),而且該類型必須與範本中定義的類型相符。
  • 範本不包含任何有關使用者遺漏值的資訊。 目標變數的使用者遺漏值是依據原始變數清單中的第一個變數,其清單含有已定義的使用者遺漏值。 除系統遺漏值外,所有其他原始變數的數值都會被視為有效。
  • 會先套用與範本對應的數值。 剩餘的所有數值會重新編碼為數值,其數值會高於範本中的最後一個數值;同時使用者遺漏值 (依據清單中的第一個變數,其中清單中含有已定義的使用者遺漏值) 會重新編碼為高於最後一個有效值的數值。
  • 如果您已選取多個變數進行自動重新編碼,則會先套用範本,接著對所有選取變數中的其他數值進行通用自動重新編碼組合;最後會產生單一通用的自動重新編碼方法,適用於全部選取的變數。

若要將字串或數值重新編碼成連續整數

  1. 從功能表中選擇:

    轉換 > 自動重新編碼 ...

  2. 選取要重新編碼的一或多個變數。
  3. 替所選取的變數輸入新的變數名稱,再按一下「新名稱」。