在進行量化研究與統計分析時,變數重新編碼 (Recode) 是最基礎也最重要的資料處理步驟之一。無論你是需要將「年齡(連續變數)」轉換為「年齡層(類別變數)」,或是處理問卷中的「反向題計分」,這篇教學都將透過模擬數據,一步步帶你完成操作。
一、為什麼需要「變數重新編碼」?
在 SPSS 中,我們通常在以下三種情況下使用重新編碼功能:
1.連續變數轉類別變數:例如將具體的薪資數字(35,000元)轉換為薪資等級(低/中/高)。
2.反向題處理:在李克特量表 (Likert Scale) 中,將負面問項的分數翻轉(例如1分變5分,5分變1分)。
3.合併組別:當某些組別樣本數過少時,將其合併到相鄰組別。
p.s. 建議使用「重新編碼成不同變數」(Recode into Different Variables),而不要使用「重新編碼成相同變數」。這樣可以保留原始資料,避免操作錯誤導致數據永久遺失。
二、「員工滿意度調查」模擬數據
接下來,我們將使用模擬的一份「員工滿意度調查」數據進行說明。
(一)變數說明
1.ID:員工編號
2.Age:實際年齡(連續變數)
3.Stress_Level:工作壓力指數(1-5分,1代表壓力極低,5代表壓力極大)。這是一道反向題,我們希望分數越高代表「抗壓性越好」或「狀態越好」,因此稍後需要反向計分。
三、變數重新編碼情境:連續變數轉類別變數 (年齡分組)
如果希望將年齡(Age)變數轉換為三個年齡層:
1.青年組:30歲 (含) 以下
2.壯年組:31 – 50 歲
3.資深組:51 歲 (含) 以上
則需要在SPSS上方選單點選【轉換】→【重新編碼成不同變數】。
接著,將「Age」變數移入中間的框框,並在右側【輸出變數】的名稱與標籤欄位輸入新變數名稱(例如:Age_Group),點擊【變更】。
再點擊【舊值與新值】按鈕並設定分組邏輯:
(一)青年組 (<= 30)
左側選【範圍,從最低到值】,輸入30。
右側【值】輸入1。
點擊【新增】。
(二)壯年組 (31-50)
左側選【範圍】,輸入31至50。
右側【值】輸入2。
點擊【新增】。
(三)資深組 (>= 51)
左側選【範圍,從值到最高】,輸入51。
右側【值】輸入3。
點擊【新增】。
點擊【繼續】,回到主畫面後點擊【確定】就可以看到出現一欄新的變數了。
最後,可以到【變數視圖】將新變數「Age_Group」 的【值】設定標籤(1=青年, 2=壯年, 3=資深),詳細設定方式可以參考下面這篇文章↓
【變數設定編輯(Variable Setup) ─ IBM SPSS操作說明】
四、變數重新編碼情境:反向題計分
如前所述,工作壓力指數是一道反向題,我們希望分數越高代表「抗壓性越好」,因此需要將Stress_Level進行反向計分,即:
原始5分→新1分;
原始4分→新2分;
原始3分→新3分;
原始2分→新4分;
原始1分→新5分。
此時,同樣在SPSS上方選單點選【轉換】→【重新編碼成不同變數】。
點擊【重設】清除剛剛的設定,並將「Stress_Level」移入中間框框,再將輸出變數名稱設定為「Stress_Level_New」(或其他名稱亦可),點擊【變更】。
接下來,則需要在【舊值與新值】中設定反向邏輯,
左側【舊值】輸入1,右側【新值】輸入5,點擊【新增】;
左側【舊值】輸入2,右側【新值】輸入4,點擊【新增】;
左側【舊值】輸入3,右側【新值】輸入3,點擊【新增】;
以此類推完成4→2和5→1。
點擊【繼續】與【確定】,就可以看到出現一欄新的變數了。
以上為變數重新編碼─IBM SPSS的說明,若有SPSS相關需求再請與我們聯繫,也請給我們一個google好評,謝謝~









