第5章 數據轉換與SPSS函數
本章包括
◆ SPSS表達式
◆ SPSS函數
◆ 變量的計算
◆ 數據的選取
◆ 個案計數
◆ 數據的重新編碼
◆ SPSS變量集
在利用SPSS進行數據處理和統計分析的過程中,變量計算和數據轉換是極為關鍵的一個環節。例如,不同年份的國民生產總值,由于不同年份的價格指數存在差異,因此在進行比較時,需要將所有不同年份的數據轉換為統一口徑下的數據。再如,進行非線性回歸分析過程中,有時需要計算數據的特定函數值。
要解決上述問題,需要明確SPSS定義的關系表達式、SPSS的內部函數以及SPSS關于數據轉換的基本方法和操作。
5.1 SPSS的表達式
SPSS定義的表達式與其他高級語言或軟件基本類似,可分為算術表達式、條件表達式和邏輯表達式3種。
5.1.1 SPSS算術表達式
SPSS的算術表達式是由常量、變量、算術運算符和函數等組成的表達式。這里的變量指的是SPSS數據文件中定義的變量。
算術運算符由+(加)、-(減)、*(乘)、/(除)、**(乘方)構成。參與運算的數據類型和最后運算結果都為數值型。
運算次序為先乘方運算,再乘除運算,最后進行加減運算;同級運算中,按先左后右的順序計算。可以通過添加圓括號改變原有的計算順序。例如X+2*Y+LN(Z)是一個合法的算術表達式。
例如,在第4章表4.1教師基本情況調查問卷的數據文件中,需要計算教師的年度津貼分數,設定計算公式:工作量+論文數*2+職稱*年齡/20,表達式中的變量都是數值型,可以參與計算。
5.1.2 SPSS條件表達式
SPSS條件表達式是通過關系運算符建立的兩個量之間關系的表達式。如變量計算時,必須選擇滿足一定條件的個案參與運算,這時可利用條件表達式的值指定個案。
關系運算列表如表5.1所示,其中列出了關系運算符的6種表示形式及其含義。
表5.1 關系運算符列表

關系運算表達式表示的實際上是對條件進行判斷的式子,其結果只有兩種取值:如果判斷條件成立,結果為“真”;如果判斷條件不成立,結果為“假”。條件表達式的結果為邏輯型常量。相互比較的兩個變量類型必須一致。
表示一個條件表達式有兩種等價的方式,如“A大于B”既可以表示成“A>B”,也可以表示成“A GT B”。
例如,在第4章表4.1中的大學教師基本情況問卷統計表中,需要指出所有科研經費大于等于5000元的個案。條件表達式“科研經費>=0.5”為真時的個案為滿足條件的指定個案。
5.1.3 SPSS邏輯表達式
邏輯表達式是由邏輯運算符號和條件表達式等組成的表達式。和條件表達式的值一樣,邏輯表達式的值也為邏輯常量。
邏輯運算符列表如表5.2所示,其中列出了3種邏輯運算符的表示形式及其含義。
表5.2 邏輯運算符列表

邏輯運算符的運算順序:NOT運算優先級最高,其次是AND,最低是OR;同關系表達式一樣,也可以通過圓括號改變運算順序。
邏輯表達式又稱復合條件表達式。應用中,經常利用邏輯運算符將多個條件表達式連接在一起,形成復雜的關系表達式。
例如,在第4章表4.1中,需要在具有中低級職稱的教師中指出所有科研經費大于等于5000元的個案。邏輯表達式“職稱<=3 AND科研經費>=0.5”為真時的個案為滿足條件的指定個案。