:::

量表Cronbach's Alpha內部信度分析計算器:以Colab實作 / Cronbach's Alpha Internal Consistency Reliability Calculator: Implementation Using Colab

2024-1221-224518.png

我開發了一份Colab筆記本「內部一致性信度分析:Cronbach's Alpha計算器」,方便大家分析量表的內部一致信信度Cronbach's Alpha。這份筆記本能夠分析整份量表的Cronbach's Alpha,也可以各別計算量表中各個構面(subscaler)的Alpha係數。同時計算器還會用逐一移除題目的方式,藉由指出移除後能夠提高Cronbach's Alpha的題目,讓研究者仔細檢視量表的設計是否有改善空間。

I developed a Colab notebook titled "Internal Consistency Reliability Analysis: Cronbach's Alpha Calculator" to facilitate the analysis of a scale's internal consistency reliability using Cronbach's alpha. This notebook can analyze the Cronbach's alpha for the entire scale, as well as calculate the alpha coefficient for individual subscales. The calculator also performs item-level analysis, identifying items whose removal would increase Cronbach's alpha, allowing researchers to carefully examine and potentially improve the scale's design.


Cronbach's Alpha簡介 / Introduction to Cronbach's Alpha

a.jpeg

( Lee J. Cronbach,Cronbach's Alpha的作者。圖片來自 https://www.pinterest.com/pin/212021094931641777/ )

Cronbach's Alpha,又稱為 α 信度,是一種統計方法,用於評估測量工具的信度(Reliability),特別是內部一致性(Internal Consistency)。它是由美國心理學家Lee Joseph Cronbach(李·克隆巴赫)於 1951 年所提出,至今仍廣泛應用於心理學、教育學、社會科學等領域,用以檢視量表或問卷題項的可靠程度。簡言之,Cronbach's Alpha 協助我們了解一組題項彼此間的相關性,進而判斷它們是否一致地測量同一個概念或特質。

Cronbach's Alpha 的數值介於 0 到 1 之間。數值越高,代表題項之間的相關性越高,內部一致性越好,測量的信度也就越高。一般而言,Cronbach's Alpha 值若達到 0.7 以上,則表示該量表的信度尚可接受;若達到 0.8 以上,則表示信度良好;若達到 0.9 以上,則表示信度非常好。然而,並非越高越好,過高的 α 值(例如超過 0.95)有時候可能暗示題項之間過於相似或冗餘,反而可能降低測量的效度(Validity)。 此外,Cronbach's Alpha 的值也會受到題項數量多寡的影響,題項越多,α 值通常會越高。

需要注意的是,Cronbach's Alpha 僅能測量內部一致性信度,無法測量其他類型的信度,例如重測信度(Test-retest Reliability)或評分者信度,也跟我之前介紹的「編碼者間一致性信度:Cohen Kappa係數計算器」是不同的測量方式。此外,高 α 值也並不代表該量表一定是單維度的(Unidimensional),它可能測量了多個相關的概念。因此,在解釋 Cronbach's Alpha 的結果時,需要綜合考量其他因素,例如量表的設計目的、題項的內容、樣本的特性等等,才能更準確地評估測量工具的品質。


計算Cronbach's Alpha / Calcuating Cronbach's Alpha

cronbachs_alpha_formula-cropped.png

https://statisticsbyjim.com/basics/cronbachs-alpha/ 

以下我借用Statistics By Jim的說明,來解釋Cronbach's Alpha的計算公式。在上面的公式中:

  • N = 題目的數量
  • c = 題目的平均共變數(covariance)
  • v =題目的變異數(variances)

Cronbach's Alpha係數的計算方式,是將平均共變數除以平均總變異數。因此,要獲得高的Alpha係數值,共變數必須相對於題目變異數較高。也就是說,題目之間的關聯性必須能解釋大部分的整體變異。用白話來解釋的話,就是每位受試者填答量表的時候,填答的方向都有明顯的一致性。要嘛就是大家普遍都填較高的選項、要嘛就是大家都普遍填較低的選項,這樣的結果就能得到良好的內部一致信係數。另一方面,如果某些題目眾人的看法不一,有人填了高選項、有人填了低選項,而這些填答的變化又跟其他題目無關,那最終會降低內部一致信係數。

reliability1.jpg

https://www.yongxi-stat.com/spss-reliability-analysis/

由於Cronbach's Alpha的計算比較複雜,過往的統計大多使用SPSS的「信度分析」來計算。大部分的研究在計算Cronbach's Alpha時,不僅會計算整份量表的Cronbach's Alpha,也會將量表的各個構面獨立出來,各別計算Cronbach's Alpha。此外,許多教學都會啟用「刪除項目之後量尺摘要」的功能,嘗試檢視刪除某些讓受試者混亂的題目看能不能提升Cronbach's Alpha的結果。詳細SPSS的教學可以參考以下網頁:

https://www.statology.org/cronbachs-alpha-in-python/

https://www.statology.org/cronbachs-alpha-in-python/ 

除了SPSS之外,許多程式語言也都有計算Cronbach's Alpha的相關工具。Zach Bobbitt就介紹了如何在Python內用pingouin套件計算Cronbach's Alpha。

因此我參考了大家使用Cronbach's Alpha的分析方式,將之總結成能夠用網頁直接執行的Colab筆記本「內部一致性信度分析:Cronbach's Alpha計算器」,希望讓需要分析Cronbach's Alpha的研究者可以簡單且全面地檢視量表的內部一致性信度。


如何使用Cronbach's Alpha計算器 / How to Use a Cronbach's Alpha Calculator

以下我們分成準備資料、進行分析、解讀結果三個階段來說明。

準備資料 / Preparing Data

2024-1221-192557.png

範例資料下載:https://docs.google.com/spreadsheets/d/1hMIngaXUgvQ10dncPsbLPFfhpr0E2T4Bdqv329mj1AY/export?format=ods

請你使用ODS格式。ODS是Open Document Format開放文件格式中的試算表格式,可以使用LibreOffice Calc開啟與編輯。關於LibreOffice Calc的介紹,可以參考「試算表應用實務 LibreOffice Calc」。使用Excel有可能會出現亂碼,並不建議大家使用。

資料的組成方式有以下規則:

  • 第一列為欄位名稱。
  • 第一欄為識別受試者的編號,請用ID註明。計算器會自動將ID欄位排除,ID底下的資料不會納入Cronbach's Alpha的分析。因此ID底下的值可以任意填寫。
  • 第二欄之後的欄位為題目跟填答結果。例如B1為量表的第一題「1.堅持不懈-1」,而底下則是每一位受試者填答的里克特量表分數。
  • 如果量表的題目有區分構面,請用「-」分隔題目與構面。例如題目名稱「1.堅持不懈-1」,表示是「1.堅持不懈」構面中的「1」題目。

2024-1221-220100.png

你可以下載範例資料,然後參考上述規則來調整量表的記錄。調整好之後,接下來就可以用這份量表結果來進行分析。


執行分析 / Performing Analysis

2024-1221-193252.png

請透過以下網址開啟Colab筆記本「內部一致性信度分析:Cronbach's Alpha計算器」:

https://colab.research.google.com/drive/1Db8Z0uHbvfyiNE8mD7ip7Ye44ZLbCjGs?usp=sharing 

2024-1221-193408.png

首先,我們先 (1) 開啟檔案側邊欄,(2) 上傳量表結果資料,(3) 確認檔案已經上傳。如果你不知道如何在Colab裡面上傳檔案的話,請參考「如何在Colab上傳和下載檔案?」的教學。

附帶一提,此處上傳的檔案會保存到為你的帳號臨時開啟的虛擬機器裡,不會被其他人看到。而此處上傳的檔案跟待會分析完取得的結果,會在一段時間後自動刪除,因此請記得保留好原始檔案。

2024-1221-193656.png

接著執行程式碼。(1) 進入Runtime,(2) Run all,等待 (3) 分析結果出現在檔案側邊欄裡面。如果那你不知道如何在Colab裡面執行程式的話,請參考「如何在Colab執行程式?」的教學。

2024-1221-220821.png

分析結果會是 (1) 以7z副檔名結尾,請你在檔案上按右鍵,選擇 (2) Download 下載檔案。

2024-1221-220916.png

這樣就能取得分析結果了。

2024-1221-220933.png

你可以用PeaZip來解壓縮7z檔案。解壓縮後,你會看到Cronbach's Alpha的分析結果。此處一樣是保存成ODS格式,請用LibreOffice Calc來開啟吧。


解讀結果 / Interpretation of Results

從檔案名稱區別整體與構面 / Distinguishing Wholes and Subscalers from Filenames

接下來我們來看看這些分析結果ODS檔案到底是什麼意思。

2024-1221-221031.png

Cronbach Alpha Alaysis - 2024-1221_140838-1_all.ods

這些檔案可以分成兩種:整份量表的分析結果,以及各個構面的分析結果。如果檔案名稱以「-1_all.ods」結尾(Windows使用者看不到副檔名,所以可能只會看到「-1_all」),那就是指整份量表的分析結果。

2024-1221-221053.png

Cronbach Alpha Alaysis - 2024-1221_140838-2_1.堅持不懈.ods

另一方面,檔案名稱結尾為「-2_****.ods」的ODS檔案,則是各個構面的分析結果。舉例來說,我們在量表裡面設定了題目「1.堅持不懈-1」,這表示我們的量表包含了「1.堅持不懈」構面,因此分析結果即包含了「-2_1.堅持不懈.ods」。

Cronbach Alpha Alaysis - 2024-1221_140838-2_1.堅持不懈.ods

除此之外,我們也可以看到檔案名稱裡面,開頭紅字的部分是原本檔案的名稱,而藍字的部分則是月、日、小時、分鐘與秒數,讓大家能夠瞭解分析結果的原始資料和分析時間。

從檔案內容查看信度分析的結果 / Checking the Results of Reliability Analysis from File Content

2024-1221-221507.png

接下來讓我們進入檔案,看看信度分析的結果。不論是整體還是各別構面,分析結果都會用以下的樣式來呈現:

2024-1221-221607.png

第一列為欄位名稱,意思如下:

  • removed_item:如果該題目被移除的話,信度分析會是後面的結果。
  • alpha:Cronbach's Alpha的結果。
  • lower:Cronbach's Alpha 95%信賴區間的下限。
  • upper:Cronbach's Alpha 95%信賴區間的上限。
  • improved:跟未移除題目的情況相比,Cronbach's Alpha改變了多少。如果是正值,表示移除掉該題目後,Cronbach's Alpha係數的結果提高了。

2024-1221-222021.png

接下來我們來看第二列:

  • removed_item = no:這是沒有移除題目的情況,也就是整份量表的結果。
  • alpha = 0.944114672030726:整份量表的Cronbach's Alpha為0.94,表示信度良好。
  • lower = 0.89:Cronbach's Alpha的95%信賴區間下限為0.89。
  • upper = 0.98:Cronbach's Alpha的95%信賴區間上限為0.98。意味著在95%的信心水準之下,真實的Cronbach's Alpha大概會出現在這個範圍,也就是不會太差的意思。想要瞭解信賴區間的意義,可以參考「區間估計不用再查表了!信賴區間計算器」這篇。
  • improved: 0。跟整體比較下來,Cronbach's Alpha改變了0。因為第二列就是比較的基準點。 

2024-1221-222514.png

接下來我們來看看第三列:

  • removed_item = 2.將其視為事業-4:如果將「2.將其視為事業-4」移除掉的話,後面是信度分析的結果。
  • alpha = 0.946375690996641:移除該題目後,量表的Cronbach's Alpha來到了0.9463,表示信度良好。
  • lower = 0.895:該Cronbach's Alpha的95%信賴區間下限為0.895。
  • upper = 0.98:該Cronbach's Alpha的95%信賴區間上限為0.98。
  • improved: 0.0022610189659148。跟整體比較下來,移除該題目可以使Cronbach's Alpha係數提升0.00226。也就是該題目可能有需要修改與調整的空間。 

2024-1221-222750.png

自第三列之後,題目的排序都是以improved遞減。這樣可以幫助大家快速查看可能比較有問題的題目,以此來改善量表。


結語 / Conclusion

2024-1221-223341.png

圖片來源:https://zh.surveymonkey.com/mp/likert-scale/ 

使用量表或問卷來進行量化研究是現代研究中的基本功夫,而信度分析是確保量表與問卷等研究工具達到足夠品質的一項重要的分析步驟。如果研究工具信度不足,則表示研究取得的資料不可靠、可能失準。

在各種信度分析的做法中,內部一致信信度Cronbach's Alpha目前社會科學研究裡必須進行的基本分析。只要你的量表或問卷採用了類似五點、七點、九點這種里克特量表(Likert scale),最好能在實施測量的中間或撰寫結果報告之前,都進行信度分析的檢測。以此確保自己研究報告的結果具備一定的信度。

2024-1221-222921.png

本篇使用Colab筆記本實作的「內部一致性信度分析:Cronbach's Alpha計算器」,結合了過往研究者應用Cronbach's Alpha進行信度分析的做法,不僅能夠分析整份量表和各個構面,也能夠從逐一刪除題目來改善Cronbach's Alpha的分析中,找出值得改善的題目。

希望這份Cronbach's Alpha計算器能對各位進行量化分析時有所幫助。有任何問題也請在下面留言討論,謝謝大家。


那這篇文章就到此為止了,文章最後要來問大家的是:面對以下資料,請問你知道該用什麼信度分析做法呢?

1. 兩位編碼者對質性資料的編碼,要怎麽作信度分析呢?

2. 兩位評分者對學生的報告打分數,要怎麽作信度分析呢?

3. 三位評分者對學生的報告打分數,要怎麽作信度分析呢?

4. 同一位受試者在不同時期測量的量表結果,要怎麽作信度分析呢?

5. 其他:歡迎在下面留言,分享你的看法!