虛擬變項設0,1跟1,2有差別嗎? / Is There Any Difference between Setting 0,1 and 1,2 for the Dummy Variable?
在迴歸分析中,兩者並沒有差別。
問題敘述 / Question
我在「那個才是影響依變項最多的自變項?以SPSS實作解釋型多元迴歸」這篇中以學生的資料進行解釋性多元迴歸分析,比較「性別」、「缺席次數」、「作業分析」、「期中考」與「期末考」對於「學期總分」的影響。最後結論是「缺席次數」對「學期總分」的影響最大。
其中,「性別」的資料是類別類型,我用1跟2代表不同性別。
讀者統計人認為類別變項應該要轉換成虛擬變項(dummy variable),而值只能設為0跟1。設成1跟2就變成順序變項,失去意義。
這可能是因為很多人忘記在變數檢視(Variable View)裡將類別變項的測量(Measure)改成「名義」(Nominal)。
好,話說回來,你是不是也很好奇,在解釋性多元迴歸分析中將虛擬變項設為「1跟2」或「0跟1」,兩者有沒有差別呢?就讓我們實際做做看吧。
分析工具:PSPP / Analysis Tool: PSPP
https://www.gnu.org/software/pspp/
這次我們的分析工具是PSPP。這是類似於SPSS的統計軟體。功能不及SPSS強大,但跑跑基本的統計倒是沒什麼問題。而且PSPP採用GUN授權條款,可以免費下載使用。支援Linux、Windows、MacOS多種版本。
這次我們用的是PSPP 1.4.1版本。
資料集 / Dataset
為了比較兩種虛擬變項的不同,我們準備了兩個資料集。
「性別」設為1跟2的dataset1_1,2。
- Google試算表線上檢視: https://docs.google.com/spreadsheets/d/1zczZnV4JtXlOA5qtSos7dZ1ygstqxYmVRXFtfBdv-SY/edit?usp=sharing
- dataset1_1,2.sav下載:GitHub, Google Drive, One Drive, Mega, Box, MediaFire
「性別」設為0跟1的dataset2_0,1。
- Google試算表線上檢視: https://docs.google.com/spreadsheets/d/1WUQmc_voaIjbwpnmxjUBPNTUste0EfwP1UlKMxlusMc/edit?usp=sharing
- dataset2_0,1.sav下載:GitHub, Google Drive, One Drive, Mega, Box, MediaFire
分析步驟 / Steps
讓我們用這兩份資料集,以跟「那個才是影響依變項最多的自變項?以SPSS實作解釋型多元迴歸」同樣的操作來分析看看。以下用「dataset2_0,1.sav」為例子進行分析。
用PSPP開啟dataset2_0,1.sav。
開啟後會顯示Variable View。要注意性別gender的Measure已經被設為Nominal了喔。
切換到Data View,確認資料沒有問題。
進入Analyze > Regression > Linear...
接著來設定依變項(Dependent)與自變項(Independent)。先在左邊的變項列表選擇變項,然後按中間的左右箭頭挪動變項。
「score」是我們的依變項,其他變項都是自變項。挪動完成後如上圖所示。然後按下「OK」進行分析。
在另一個Output視窗就可以看到分析結果。
我們從Coefficients分析結果中可以看到absences缺席次數的Sig.顯著程度低於0.05,表示該自變項有顯著的影響。
比較 / Compare
這裡我們要關注的是gender的Sig.只有0.930。注意一下,這是「dataset2_0,1.sav」的結果。
讓我們改用「dataset1_1,2.sav」進行分析,可以看到gender的分析結果也是相同。唯獨Constant常數的部分不同,這是因為「0跟1」跟「1跟2」數字上本來就不一樣,而常數在此項分析中意義不大。
結論 / Conclusion
結果可以得知,虛擬變項設為「0與1」或是「1與2」,並不會影響多元迴歸分析的結果。重要的是要在變數檢視(Variable View)裡將類別變項的測量(Measure)改成「名義」(Nominal),這樣分析結果才會正確喔。
最後要來問的是:你從哪裡聽過迴歸分析呢?
- 1. 統計課老師有講過。
- 2. 機器學習常常聽到這個詞。
- 3. 我只知道北迴歸線經過嘉義。
下面留言喔!