:::

區間估計不用再查表了!信賴區間計算器 / Confidence Intervals Calculator

簡報1

區間估計是學習推論統計的第一道關卡,但是計算區間的門檻卻相當的高。計算區間估計時,要知道資料適用的分佈、各種分佈對應的誤差範圍的計算公式、並搭配z分佈t分佈的查表等技巧,儘管如此,這些步驟其實也只是機械化的動作已,用人腦來算其實是挺沒效率的一件事情。

因此,我參考深入淺出統計學的公式與範例,以JavaScript製作了一份純網頁版本的信賴區間計算器。當任何研究使用想要從樣本來推估母體參數時,都可以用這個信賴區間計算器來計算母體參數可能位於的區間。


信賴區間計算器 / Confidence Intervals Calculator

使用說明 /  Instruction

此信賴區間計算器有兩種模式,請根據資料類型來選擇。

image

第一種模式是估計母體平均數的區間,適用於抽樣資料有很多筆連續數值的情況。此模式能使用兩種分佈來計算,當樣本數量未達30時適用於小樣本的t分佈,而樣本數量在30以上時,根據中央極限定理,適用於常態分佈。

image

另一種模式是估計母體比例的區間,適用於樣本為一個介於0到1之間的比例值,還需要輸入樣本的數量。這種比例資料適用於二項分佈,不可與常態分佈、t分佈混為一談。

image

此外,信賴區間計算器中還可設定信心水準,以百分比表示。在推論統計研究的共識中,大多是為90%、95%、99%等三種數值。信心水準越大,估計出來的區間越有可能包含母體參數(不管是平均數或比例),但區間上限與下限的範圍也會越大。

最後是顯示報表的小數點位數。預設採用的是小數點後第三位四捨五入,跟SPSS一樣。


試算範例 / Example

以下我以兩個試算範例來說明信賴區間計算器如何使用。

估計母體平均數的信賴區間 / How to estimate confidence intervals of the population mean

口香糖工廠要估計口香糖產品的母體平均值,並希望找到95%信賴水準之下的信賴區間。

品管人員抽樣10顆口香糖,秤重之後如下:

0.7
0.895
0.305
0.4
0.3
0.735
0.115
0.1
0.9
0.55

接著我們來到信賴區間計算器,進行以下設定:

  • 模式:多筆數值(常態分佈/t分佈)
  • 輸入數值資料:將上面的樣本重量輸入進去,一筆資料一行。
  • 母體分佈模式選擇:根據樣本數量選擇。在此例子中,因為樣本數量小於30,程式會選擇t分佈來估計。
  • 信心水準百分比:95%

image

設定之後的畫面如上圖。

image

數值設定之後就會立刻計算結果,分析結果報表如上圖。從此表來看,母體平均數為0.5,而最後一句話「分析結果顯示,(0.285, 0.715)有95%的機會包含母體平均數」就是區間估計,其中0.285就是區間估計的下限、0.715則是區間估計的上限。至此計算結束。


估計母體比例的信賴區間 / How to estimate confidence intervals of the population proportion

民意調查想知道某候選人的母體支持度,以及其在95%信心水準底下的信賴區間。在抽樣1110位民眾之後,計算樣本中支持某候選人的比例為58% 。在點估計的層次來看,此樣本比例可視為母體比例。但如果要計算信賴區間,則還需要進行更進一步的計算:

接著我們來到信賴區間計算器,進行以下設定:

  • 模式:單筆比例(二項分佈)。因為支持率是比例,適用於二項分佈。
  • 樣本比例:0.58。這裡不是用百分比,請用介於0到1的比例來呈現。
  • 樣本數量:1110
  • 信心水準百分比:95%

image

設定之後的畫面如上圖。

image

數值設定之後就會立刻計算結果,分析結果報表如上圖。從此表來看,點估計的母體比例為58%,而最後一句話「分析結果顯示,(55.1%, 60.9%)有95%的機會包含母體平均數」就是區間估計,抽樣誤差為2.9%。至此計算結束。

image

附帶一提,如果此資料以「支持=1、不支持=0」的多筆數值輸入到「多筆數值」模式中(如上圖),那麼計算結果仍會跟上述用單筆比例的方式計算相同。


參考資料 / Reference

封面

信賴區間計算器的公式主要來自於深入淺出統計學。這本書是我目前看過統計教科書中對區間估計講解最完整的例子,說明了許多教科書沒有釐清的資料分佈區別。參考書目如下:

Griffiths, D.(2009)。深入淺出統計學(楊仁和譯)。臺北市:美商歐萊禮公司臺灣分公司。(ISBN:978-986-6840-35-7)

候選人支持度的例題來自於林柏佐老師的「信賴區間與信心水準的解讀」,信賴區間計算機的結果與其文中的例子結果相符。

程式中查詢z分佈c值的函式來自於「How do I convert probability into z-score」中的Gregory解答,查詢t分佈t值的函式來自於Robsteraniumstatistics-distributions.js」。在對照z分佈與t分佈機率表之後,兩者函式運算結果都與查表結果相符。


小結 / In closing

區間估計的統計技術從20世紀中期就已經發展成熟,而在今日在大學的統計相關課程中則是推論統計的第一道關卡。儘管如此,許多研究在估計母體參數時,仍然只有用到點估計的層次,沒有到應用到區間估計。例如在進行學生的學業成績調查時,大多研究僅止於計算成績的平均數。若此時應用區間估計,加入「在95%的信心水準之下,學業成績母體平均數會落在(下限)與(上限)之間。」的分析。這樣子更能顯著提升研究的層次。

缺乏區間估計的計算工具

既然區間估計這麼好用,為什麼大家都不做呢?我在想理由可能是「沒有好用的工具,不想用手算」。就如開頭所言,區間估計的計算手續很麻煩。不僅計算式繁雜,還要搭配查表。其中一步算錯,後面就整個都錯,手動計算的過程實在是很令人灰心。我在大學學統計的時候也是很反對手動計算區間估計,由衷對於這種制式化的動作還要人手計算感到反感。直到現在,學習統計的學生也仍然對區間估計感到不解,而手動計算容易出錯的結果,也會讓教學的統計老師覺得很洩氣。

而統計界大家最喜歡的SPSS雖然也有區間估計,但大家學到的卻都是平均數差異值的區間估計(t檢定),反而不知道如何從樣本來進行母體參數的區間估計。這也是我撰寫這個信賴區間計算器的主要原因之一,希望能夠讓區間估計技術更容易使用。也算是了了大學時的心願:我就是不想用手算來計算區間估計啊。

區間估計的混亂

再來講區間估計另一個問題:計算區間估計的混亂。

許多信賴區間的計算雖然都名為區間估計,但背後的計算方式卻差非常多。我得特別強調,差非常非常非常多,不是所有的區間估計都用同一套算法。這個差異取決於抽樣樣本的資料性質,以及資料背後的資料分佈。

大部分的統計課本都會先從已知母體參數的情況下,以常態分佈(z分佈)開始介紹區間估計的計算。然而,我認為這意義並不大。在信賴區間計算器中,我刻意忽略了「已知母體是常態分佈」(除非是樣本數超過30以上,符合中央極限定理的情況)、「已知母體平均數」、「已知母體標準差」的這種前提假設。通常在實務應用上,我們並不會知道母體的平均數跟標準差是多少,這種情況大多只是統計課本跟考試才會出現的例題,並不實際,所以我做的信賴區間計算器並未納入這些考量,僅從樣本統計量來計算信賴區間。

另一個問題在於大多數區間估計並沒有詳細說明「多筆樣本連續數值算母體平均數」跟「單筆比例來算母體比例」的這兩種情況,前者適用於z分佈或t分佈,後者適用於二項分佈。兩者在計算區間估計的時候做法差別相當的大,卻很少看到區間估計教學有指明這一點。有些區間估計教學會以常態分佈開始教起,但這時候適用的資料僅是多筆連續數值的情況,並不適用於單筆比例。有些區間估計著重於「候選人支持度」的區間估計,這個資料是比例數值,適用於二項分佈,但教學中大多寫得跟前面的常態分佈一樣,計算公式卻並不相同,令學習者帶來許多困擾。

image

我看到現在,也只有「深入淺出統計學」這本書有講清楚這兩者之間的差別。雖然深入淺出系列價格很貴,但的確有它的價值在啊。

理論派的堅持?

話說有些硬派理論統計學家蠻不齒這種簡單使用的計算器,計算器只求結果、讓使用者忽略背後理論的做法,簡直就是失去了統計的靈魂!不過,老實說,推論統計背後的理論其實已經多到難以全部吸收的程度了。姑且不論信賴區間的計算公式,z分佈跟t分佈的查表、95%信賴水準的制定、中央極限定理的證明等等眾多理論才能建構出區間估計的基礎,而這些背後理論並不是非統計主修的課程所能講得完的程度。

換個角度來看,放輕鬆點,何必這麼嚴肅?我個人看來,享受推論統計能夠帶給我們的好處,比起搞懂背後的理論來說更加重要。在開車的時候,即使我們搞不懂車上使用了多少顆螺絲,我們還是可以享受車子帶給我們的便利性。如果對車子很有興趣的人,自然而然就會想要進一步去研究車子的構造、甚至改良車子本身。師父領進門,修行在個人,不就是這樣嗎?

好啦,其實我也只是寫個信賴區間計算器,方便未來使用而已,不知不覺就閒聊了一堆事情。那我們這次就閒聊到這裡囉。

總共25 則留言 ( 我要發問 , 隱藏留言 顯示留言 )

  1. 我想給個一萬個讚,真的修行在個人,做問卷報告時有這個工具方便多了,感謝大大XDD

    回覆刪除
    回覆
    1. 謝謝

      不過區間估計的概念還是要好好上統計課才能學到喔
      大家通常都只知道點估計,但對區間估計就很陌生了呢

      刪除
  2. 請問存活分析, 舉例, 五年存活率是77% ,他的confidence interval 可以用您的二項分布的公式去算嗎? 網路上找答案找好久,還是回來問您

    回覆刪除
    回覆
    1. To G L,
      存活分析是另一種統計的分析方法,本篇只是基本的區間估計而已,兩者用法有些差別。
      區間估計還是去看專門統計書籍的教學吧。

      刪除
  3. 非本科的初學者想請教一個笨問題,
    c值是甚麼?是常數嗎?
    又或怎麼計算?

    因為我套教本(主要是高三程度的教科書)公式計算算出來的抽樣誤差值,和用這個計算機算出來的抽樣誤差值,兩者間存在些微的差。
    想來是c值沒有乘上去的關係。
    是否可不吝簡單講解一下c質的概念,或者給予計算公式,
    感激m(_ _)m

    回覆刪除
    回覆
    1. 根據參考資料「深入淺出統計學」這本書中504頁的記載,c值是計算信賴區間公式中會使用到的常數,c值會隨著信賴水準的提升而增加,舉例來說如下:
      - 信賴水準 / c值
      - 90% / 1.64
      - 95% / 1.96
      - 99% / 2.58
      當信賴水準越高時,c值越高
      而信賴水準跟c值的對應公式,紙本教科書多是提供主要三個信賴水準與c值的對應表,其他信賴水準再以插值法計算。但我寫程式時,直接參考Gregory發展的函式計算:
      https://stackoverflow.com/questions/36575743/how-do-i-convert-probability-into-z-score/36903699#36903699

      ----

      c值跟信賴區間的關係為何呢?

      1. 「信賴區間」的基本概念是:統計量 ± (誤差邊際)
      2. 「誤差邊際」就是 = c值 ✖️ (統計量的標準差)。
      3. 當c值越大時,「誤差邊際」也就會增加,「信賴區間」也就跟著一起變大。
      4. 考慮到c值與信賴水準的關係,簡單來說,當「信賴水準」越高時,c值增加,誤差邊際增加,信賴區間越大。

      ----

      信賴區間越大,表示母體參數可能出現的範圍變廣,就是越不精準的意思。
      這概念我想應該很多人會覺得很混亂,再整理一下:
      - 「信賴水準95%下」的意思是:我有95%的信心認為下面的宣言是正確的。
      - 「信賴區間為0.326到0.674之間」的意思是:母體參數(例如平均數)會落在0.326至0.674之間。

      兩者合在一起就是
      - 「信賴水準95%下,信賴區間為0.326到0.674之間」意思是:我有95%的信心認為,母體參數(例如平均數)會落在0.326至0.674之間。

      如果我們提高信賴水準為99%,那結果就會是:
      - 「信賴水準99%下,信賴區間為0.232到0.768之間」意思是:我有99%的信心認為,母體參數(例如平均數)會落在0.232至0.768之間。

      你可以發現95%的區間0.326至0.674比較小,而99%的區間0.232至0.768比較大。
      這背後的意思就是說,當別人要你用更高水準來確認母體參數的正確性時,你只好擴大可能的範圍,以確保更大的範圍能夠更有可能涵蓋母體參數。
      反過來說,如果別人想要縮小母體參數可能的信賴區間,那這個區間就更可能猜錯,因此信賴水準就會降低。

      ----

      大概c值、信賴區間與信賴水準的關係大概是這個意思,很有趣吧。
      有什麼不懂的地方也歡迎提問喔。

      刪除
  4. 啊,抱歉,我找到原因了,
    原來教科書用的是近似值orz

    回覆刪除
  5. 您好!您的t值計算有誤。比如,90%信賴區間,應該是t0.05, 不是t0.1。請核查一下,不然有誤導。

    回覆刪除
    回覆
    1. 您好,請問有相關資料可供測試嗎?
      這樣的敘述我有點不太知道如何偵錯。

      資料可以寄到 blog@pulipuli.info 喔

      刪除
  6. 您好。就以您的網頁上的原始例子,df=9, 信心水準95%,那麼正確的t值是2.262,而不是1.833。您的程式查t分佈表的時候,出現查表錯誤。原因是:信心水準95%,應該查0.025那一列,不是0.05那一列。

    回覆刪除
    回覆
    1. ok 我看到了,的確是我算錯了!

      還好有您提醒修正QQ
      我順便把程式碼整理到獨立的儲存庫,方便其他人使用吧!

      刪除
  7. 請問我數值與設定都完成後 結果欄都沒有變化,是少了甚麼步驟嗎?

    另外多筆數值與單筆比例的切換方式為何呢?

    非常感謝布丁提供實用工具

    回覆刪除
  8. 可否請教一下,以下範例:不知道程式中的樣本比例跟樣本數量應該是多少,才會得到以下範例的區間結果? 湊了好就都湊不出來。
    臨床試驗針對目標族群 之 220 名受試者採集檢體。每個檢體分別以新體外診斷醫療器材與黃金標準方法判讀。在黃金標準方法判定 為陽性的51位受試者中,有44位受試者亦由新的體外診斷醫療器材正確地判讀為陽性 (+);而在黃金標準方法判定為陰性的169位受試者中,有高達 168 位受試者亦由新的體外診斷醫療器材正確地判讀為陰性 (-)。估計的 新體外診斷醫療器材的靈敏度為 86.3% (44/51),專一性為 99.4% (168/169)。依據二項式分布 (binomial distribution)計算,靈敏度及專一性的精確(exact) 95% 信賴區間分別為(73.7%, 94.3%)和 (96.8%, 100%)。

    回覆刪除
    回覆
    1. 你好,

      可能要從計算式去反推,這個就請自行努力了。

      刪除
  9. 謝謝提供工具,但我的樣本數少於30卻無法切換,只有點常態分佈才有結果,T分布沒有反應

    回覆刪除
    回覆
    1. https://blogger.googleusercontent.com/img/a/AVvXsEi0gX60Alvng5WFH6KPVyap5TglQjFB1XPGHXXTT_DLNN_pwY84uZK474SU4LxNypDaOTT7D8rLnhVLFGDef5iagvyeRgbJRUp4jUAEPNZh4LI6gWQcX_W_QYlipTgSAsXKwYqfhLyRM_KukwyWXM_O_7vqC4_ztpCK0o3SM2o-wbvinR91ZYI

      範例樣本只有10筆,結果看起來是有正常出來。你看到的不是這樣嗎?

      刪除
    2. 的確在範例上可以切換也有結果,但我自己輸入三筆樣本也有點選下方選項卻無反應。請問小數點後幾位有限制嗎?

      刪除
    3. https://blogger.googleusercontent.com/img/a/AVvXsEizLiWqvU4049LICVbwE4cDPnDA4x8OREaeuTr_yYBpVhwgFckjhIFOowqX_C8FIZqgH4I4Ql0ZxZOClbnkXPpfBqRwJDsXH7alfITns4-gFj9STllU17JsJsjlmxswnXuVuBWqUtOXYYKUZRYmj05Whc6g7BivMJ_uMHx3YI_EkXhmAK-njbM
      預設是小數點後3位,可自行調整。

      刪除
  10. 你好 想請問一下 我只有輸入一組10個數字的資料而已
    請問t值 是如何計算出來的?

    回覆刪除
    回覆
    1. 您好,

      t值計算方式

      1. 看書。
      Griffiths, D.(2009)。深入淺出統計學(楊仁和譯)。臺北市:美商歐萊禮公司臺灣分公司。(ISBN:978-986-6840-35-7)

      2. 看程式碼。
      https://github.com/pulipulichen/HTML5-Confidence-Intervals-Calculator/

      加油。

      刪除