Google試算表也能算推論統計:XLMiner Analysis ToolPak之獨立樣本t檢定 / Student’s t-test in Google Spreadsheet: XLMiner Analysis ToolPak
算統計一定要SPSS嗎?這可是大大的認知錯誤。除了SPSS之外,Excel、R-Web都有許多統計工具。不僅如此,就連Google試算表的外掛程式也有統計工具XLMiner Analysis ToolPak可以用。今天這篇就要帶大家來用Google試算表計算推論統計中最常用的獨立樣本t檢定,步驟簡單又實用。
安裝外掛程式 / Install XLMiner Analysis ToolPak
XLMiner Analysis ToolPak似乎就是製作Excel分析工具箱的公司,所以XLMiner Analysis ToolPak裡面的功能也大多跟Excel類似。好消息是,這次我們不用再買Office,而可以用免費的Google試算表來使用這些統計功能。
接下來我們就來看看怎麼安裝XLMiner Analysis ToolPak吧。
請打開Google試算表中的檔案,然後進入「外掛程式 ⇨ 取得外掛程式」。
在右上角的搜尋框輸入「XLMiner Analysis ToolPak」,按下「Enter鍵」,這樣應該只會找到一個結果。接著請按下「+免費」的藍色按鈕來安裝。
Google試算表要求權限,請按下「允許」。
XLMiner Analysis ToolPak跳出安裝完成的訊息了。
進入「外掛程式 ⇨ XLMiner Analysis ToolPak ⇨ Start」。
右邊會出現「XLMiner Analysis ToolPak」側邊欄,這就是所有我們可以用的統計工具了。
分析工具介紹 / Analysis Tools
XLMiner Analysis ToolPak的分析工具多達20種,同等與Excel的分析工具箱,大部分我們常用於統計的功能都已經含括在內。但是XLMiner Analysis ToolPak並不提供說明,所以我把它跟說明比較完整的R-Web作一個對照。部分R-Web沒有的方法則從其他地方找來相關說明。
XLMiner Analysis ToolPak的分析工具包括:
- ANOVA: Single Factor 單因子變異數分析、(獨立)多樣本平均數差異檢定(或稱變異數分析)
- ANOVA: Two-Factor with Replication:Anova:有重複試驗的雙因子變異數分析
- ANOVA: Two-Factor without Replication: Anova:無重複試驗的雙因子變異數分析
- Correlation 皮爾生相關係數
- Covariance 共變數分析 (參考SPSS)
- Descriptive Statistics 敘述統計、摘要統計
- Exponential Smoothing 時間數列預測用的指數平滑法 (參考Excel)
- F-Test Two-Sample for Variances (獨立)雙樣本變異數(標準差)差異檢定
- Fourier Analysis 快速傅里葉轉換(參考Excel)
- Histogram 直方圖
- Linear Regression 迴歸分析
- Logistic Regression 邏輯斯迴歸分析
- Moving Average 時間數列預測用的移動平均法 (參考自Excel)
- Random Number Generation 生成隨機樣本
- Rank and Percentile 資料排序
- Sampling 樣本資料抽取(抽樣)
- t-Test: Paired Two-Sample for Means (成對)雙樣本平均數差異t檢定
- t-Test: Two-Sample Assuming Equal Variances (獨立)雙樣本平均數差異t檢定:假設變異數相等
- t-Test: Two-Sample Assuming Unequal Variances (獨立)雙樣本平均數差異t檢定:假設變異數不相等
- z-Test: Paired Two-Sample for Means 已知變異數時候的平均數差異檢定Z檢驗
獨立樣本t檢定操作 / Student’s t-test Instruction
接下來終於到本篇的重點:獨立樣本t檢定的操作。讓我們一步一步來看看怎麼作吧。
1. 準備資料 / Prepare data for t-test
這份資料是來自隨手筆記blog中的獨立樣本T檢定這一篇。隨手筆記中用SPSS的獨立樣本T檢定來分析,而我這篇使用XLMiner Analysis ToolPak,剛好可以作個比較。同時,我也使用R-Web來做同樣的分析,讓我們一併來看看結果有什麼不同吧。
如果你要練習的話,請從連結中打開Google試算表「獨立樣本t檢定:兩個班級英文成績是否有顯著差異?」檔案,然後按照上圖的方式,從「檔案 ⇨ 建立副本」,建立一個你自己的副本之後再來操作吧。
2. 變異數同質性檢定 / Evaluate homogeneity of variances
本篇參考R-Web在(獨立)雙樣本平均數差異t檢定的做法,以f-test來取代SPSS中的Levene test。f-test跟Levene test的差別可以看「Why Levene test of equality of variances rather than F ratio?」這篇的討論。畢竟XLMiner Analysis ToolPak沒有Levene test,所以我們就用f-test來替代吧。
打開分析工具的F-Test Two-Sample for Variances,裡面有5個參數可以填。其中我們需要設定的只有3個參數:
- Variable 1 Range:要檢測的第一組變數,就是class為1的score,範圍是B2:B12。
- Variable 2 Range:要檢測的第二組變數,就是class為2的score,範圍是B3:B20。
- Output Range:匯出分析結果的位置。請找一個空白位置給它吧,設定為C1即可。
然後按下「OK」。
分析結果出來了,我們需要關注的是「P(F<=f) one-tail」右邊的數值「0.004912267411」。因為原來的數值是單尾檢定,我們在這裡還要把它乘與2,結果為「0.00982453482」。
p值小於0.05,表示這兩組資料的變異數有顯著的差異。待會分析時要使用「t-Test: Two-Sample Assuming Unequal Variances 」。
反之,如果p值大於0.05,則表示這兩組資料的變異數沒有顯著的差異。待會分析時要用「t-Test: Two-Sample Assuming Equal Variances 」。
3. 獨立樣本t檢定 / t-Test
基於f-test的分析結果,我們知道這兩組資料的變異數並不相等。因此接下來我們要選用「t-Test: Two-Sample Assuming Unequal Variances」來進行獨立樣本t檢定分析。
在「t-Test: Two-Sample Assuming Unequal Variances」中有6個參數可以設定,我們需要設定的有4個,其中3個跟f-test的時候一樣:
- Variable 1 Range:要檢測的第一組變數,就是class為1的score,範圍是B2:B12。
- Variable 2 Range:要檢測的第二組變數,就是class為2的score,範圍是B3:B20。
- Hypothesized Mean Difference:檢定平均數差異,設0即可。
- Output Range:匯出分析結果的位置。請找一個空白位置給它吧,設定為C12,擺在f-test結果下方即可。
在t-test的分析結果中,我們需要特別注意的重點是「P(T<=t) two-tail」右邊的數值「0.0761928543」。這裡的檢定結果P值大於常使用的顯著水準0.05,因此無法拒絕虛無假設,也就是無法證實這兩個班級的成績有顯著差異。
反之,如果P值小於0.05、甚至是小於0.01,那就可以說這兩個班級的成績有顯著的差異。再來回頭看看兩個班級的平均值誰高誰低,以此作為結論。
跟SPSS與R-Web的結果比較 / Comparing the result from SPSS and R-Web
接下來我們就來看看這份資料用SPSS跟R-Web跑起來有什麼不同吧。
SPSS
上面是SPSS 20跑出來的結果,跟「隨手筆記blog中的獨立樣本T檢定」的結果一樣。SPSS使用Levene test作變異數同質性檢定,結果顯示兩組資料變異數有顯著差異。因此後面的分析要看「不假設變異數相等」下面的那一列。在「不假設變異數相等」的獨立樣本t檢定中,顯著性(雙尾)的結果是0.074,未達0.05顯著水準,因此無法拒絕虛無假設,只能說這兩個班級的成績沒有顯著差異。
值得注意的是,XLMiner Analysis ToolPak計算結果的p值為「0.0761928543」,而SPSS的p值是「0.074」,其他數值兩者也些許不同,我個人推測可能前面一些數值在計算上有所差異的緣故。
R-Web
接著我們在R-Web中跑獨立樣本t檢定看看。R-Web是使用f-test來作變異數同質性檢定,在這邊可以看到p值0.0098245小於顯著水準0.05,表示兩組資料的變異數有顯著差異。這邊跟前面「F-Test Two-Sample for Variances」的結果是一致的。附帶一提,如果不想要用f-test而想要跑SPSS的Levene test,R-Web也有提供(獨立)多樣本變異數(標準差)差異檢定 Levene test的方法。
接著R-Web自動以不假設變異數相等的方式進行獨立樣本t檢定分析,分析結果得到p值為「0.073655」,一樣未達0.05顯著水準,結論跟前面一樣。
值得注意的是,R-Web計算出來的p值「0.073655」在小數點四捨五入之後就跟SPSS的「0.074」一樣,其他的t檢定統計量、自由度、信賴區間也跟SPSS相同。另一方面,XLMiner Analysis ToolPak計算結果卻跟SPSS與R-Web並不相同。
Excel
我順便也用Excel的資料分析工具箱來跑跑看,結果如上圖,P(T<=t) 雙尾為「0.072277892」。這跟前面的XLMiner Analysis ToolPak、SPSS與R-Web皆不相同。
仔細比較差異,會發現SPSS與R-Web的自由度計算為「8.621」,XLMiner Analysis ToolPak是「8」,Excel是「9」,這就造成了後面計算上的差異。這點差異很微妙,在沒有仔細分析公式之前,似乎很難斷定誰對誰錯啊。
結論 / Conclusion
要算推論統計一定要用SPSS嗎?這倒是不一定。除了雲端平臺R-Web可以進行計算之外,我們甚至可以用自己本機端的Excel分析工具箱,或是這篇所講的在Google試算表裡面使用XLMiner Analysis ToolPak來進行統計分析。
然而,儘管我們都可以在這些統計工具使用名為「獨立樣本t檢定」的分析方法,但經過比較後可以發現,其實各工具的操作方式還是有些不同。比較麻煩的是,看起來XLMiner Analysis ToolPak跟Excel的分析工具箱在自由度的計算上比較不準確,導致最後的P值跟其他人就有所差異。
儘管這可能是個隱憂,後來我也試著分析其他資料來看看,發現其實結論都差不多。SPSS跟R-Web有達到顯著水準的時候,XLMiner Analysis ToolPak也一樣會達到顯著水準。因此,XLMiner Analysis ToolPak也不至於到完全不可取的地步,不然Excel也不會將分析工具箱保留到現在。
從寫論文的角度來看,現在的學術論文比較喜歡像是SPSS這樣子,分析表格以橫向呈現,並且計算信賴區間。反觀XLMiner Analysis ToolPak並沒有直接計算信賴區間的功能,要作出學術論文喜歡的報表格式的話,這的確不是一個好選擇。
儘管如此,XLMiner Analysis ToolPak是一款免費的雲端工具,任何一臺可以開啟瀏覽器的工具都可以使用。而且你在Google試算表整理資料的過程中就可以用XLMiner Analysis ToolPak直接進行檢定,不需要將資料轉換到SPSS或R-Web才能使用,操作上更為簡便。XLMiner Analysis ToolPak沒有SPSS這樣昂貴的價格、需要額外安裝的限制,也沒有R-Web免費帳號只能分析100筆資料的限制,這是他的優勢。
在什麼時候要使用什麼資料,端看你現在的需求。不管怎麼說,能夠簡單地進行推論統計分析,其實在很多時候就很能派上用場囉!