為什麼沒有 SPSS 時 .sav 很難處理
.sav 檔帶有變數標籤(「Q4:整體滿意度」)、數值標籤(1 =「非常不同意」)與遺漏值定義。隨手轉成 CSV,留下的就是一張滿是無意義代碼的表。研究機構與大學之所以使用這個格式,正是因為這些詮釋資料。
Crosstabs 直接讀取檔案:開啟後,表格中的類別以文字呈現,變數附上題目文字,系統遺漏值與數值型使用者遺漏值(包括 97 到 99 這類範圍)會納入一般的遺漏值處理。也能讀取 .zsav 與 .por 檔。
會保留什麼、不會保留什麼
檔案完全在瀏覽器中處理,不會傳送到任何地方。對受訪者層級的原始資料而言,這往往是關鍵。
- 變數標籤顯示在變數名稱旁與資料字典中。
- 套用數值標籤:代碼 1 顯示為它的標籤。
- 沿用數值型使用者遺漏值與其範圍,系統遺漏值也一樣。
- 可以另存為 .sav:資料匯出會寫出所有變數與資料列,連同標籤、測量層級與遺漏值,重新編碼後也一樣。
- 文字變數的遺漏值定義會附說明拒絕,而不是默默以不同基數匯入。
- 非常舊或特殊的 .sav 版本可能失敗;這時請用 SPSS 或 PSPP 重新存檔,或改用 CSV。
免費替代方案比較
GNU PSPP 是仿照 SPSS 的免費桌面軟體,可以執行既有的語法檔。R 的 haven 套件與 Python 的 pyreadstat 也能穩定讀取 .sav,但前提是你會寫程式。Crosstabs 是免安裝的方式:開檔、做表、匯出。
若除了表格還需要其他 SPSS 程序,Crosstabs 的統計模式也涵蓋更多指令類別,從平均數比較到迴歸分析,同樣在瀏覽器本機執行。
計算範例
計算範例:使用者遺漏值造成的差異
一題代碼 1 到 5 的同意度題目共有 12 筆回答;97(不知道)與 99(拒答)在 .sav 檔中定義為遺漏值。沿用定義後,有效回答為 10 筆:70.0% 表示同意或非常同意,有效回答的平均數為 3.70。
隨手轉成 CSV 會遺失這個定義。於是 97 與 99 被當成量表值計算,在 1 到 5 的量表上,「平均數」竟升到 19.42。所有百分比的基數也會出錯:變成 12 而不是 10。
| 代碼與數值標籤 | 次數 | 有效百分比 |
|---|---|---|
| 1 = 非常不同意 | 1 | 10.0% |
| 2 = 不同意 | 1 | 10.0% |
| 3 = 普通 | 1 | 10.0% |
| 4 = 同意 | 4 | 40.0% |
| 5 = 非常同意 | 3 | 30.0% |
| 97、99 = 遺漏值(使用者定義) | 2 | – |
| 有效基數 | 10 | 100.0% |
說明用的合成回答資料。百分比與平均數在程式中計算。