統計 - 比例假設檢驗(左側尾部)
總體比例是指屬於特定類別的總體份額。
假設檢驗用於檢驗關於總體比例大小的斷言。
比例的假設檢驗
假設檢驗使用以下步驟
- 檢查條件
- 定義斷言
- 確定顯著性水平
- 計算檢驗統計量
- 結論
例如
- 總體:諾貝爾獎得主
- 類別:出生在美國
我們要檢驗的斷言是
"不到 45% 的諾貝爾獎獲得者出生在美國"
透過抽取 40 名隨機選定的諾貝爾獎獲得者樣本,我們發現:
樣本中有 10 名諾貝爾獎獲得者出生在美國
那麼,樣本比例為:\(\displaystyle \frac{10}{40} = 0.25\),即 25%。
我們根據以下步驟,使用此樣本資料檢驗斷言。
1. 檢查條件
計算比例置信區間的條件是
- 樣本是隨機選擇的
- 只有兩個選項
- 屬於該類別
- 不屬於該類別
- 樣本至少需要
- 5 個成員屬於該類別
- 5 個成員不屬於該類別
在我們的例子中,我們隨機抽取了 10 名出生在美國的人。
其餘的都不是出生在美國,所以有 30 人屬於另一類。
在這種情況下,條件得到滿足。
注意:在沒有每個類別都達到 5 個成員的情況下進行假設檢驗是可能的。但需要進行特殊調整。
2. 定義斷言
我們需要根據我們正在檢驗的斷言來定義一個零假設 (\(H_{0}\)) 和一個備擇假設 (\(H_{1}\))。
斷言是
"不到 45% 的諾貝爾獎獲得者出生在美國"
在這種情況下,引數是出生在美國的諾貝爾獎獲得者的比例(\(p\))。
零假設和備擇假設是
原假設:45% 的諾貝爾獎獲得者出生在美國。
備擇假設:不到 45% 的諾貝爾獎獲得者出生在美國。
可以用符號表示為
\(H_{0}\):\(p = 0.45 \)
\(H_{1}\):\(p < 0.45 \)
這是一個“左側尾部”檢驗,因為備擇假設聲稱該比例小於原假設中的比例。
如果資料支援備擇假設,我們拒絕零假設並接受備擇假設。
3. 確定顯著性水平
顯著性水平 (\(\alpha\)) 是我們在假設檢驗中拒絕零假設時接受的不確定性。
顯著性水平是意外做出錯誤結論的百分比機率。
典型的顯著性水平是
- \(\alpha = 0.1\) (10%)
- \(\alpha = 0.05\) (5%)
- \(\alpha = 0.01\) (1%)
較低的顯著性水平意味著資料中的證據需要更強才能拒絕零假設。
沒有“正確”的顯著性水平——它只說明瞭結論的不確定性。
注意:5% 的顯著性水平意味著當我們拒絕一個零假設時
我們預計在 100 次中會拒絕 5 次真實的零假設。
4. 計算檢驗統計量
檢驗統計量用於決定假設檢驗的結果。
檢驗統計量是根據樣本計算出的標準化值。
總體比例的檢驗統計量 (TS) 公式是
\(\displaystyle \frac{\hat{p} - p}{\sqrt{p(1-p)}} \cdot \sqrt{n} \)
\(\hat{p}-p\) 是樣本比例 (\(\hat{p}\)) 與聲稱的總體比例 (\(p\)) 之間的差值。
\(n\) 是樣本大小。
在我們的例子中
聲稱的(\(H_{0}\))總體比例(\(p\))是 \( 0.45 \)
樣本比例(\(\hat{p}\))是 10 名樣本中有 40 名,即:\(\displaystyle \frac{10}{40} = 0.25\)
樣本量(\(n\)) 為 \(40\)
所以檢驗統計量 (TS) 是
\(\displaystyle \frac{0.25-0.45}{\sqrt{0.45(1-0.45)}} \cdot \sqrt{40} = \frac{-0.2}{\sqrt{0.45(0.55)}} \cdot \sqrt{40} = \frac{-0.2}{\sqrt{0.2475}} \cdot \sqrt{40} \approx \frac{-0.2}{0.498} \cdot 6.325 = \underline{-2.543}\)
您也可以使用程式語言函式計算檢驗統計量
示例
使用 Python,利用 scipy 和 math 庫計算比例的檢驗統計量。
import scipy.stats as stats
import math
# 指定出現次數 (x)、樣本大小 (n) 和零假設中聲稱的比例 (p)
x = 10
n = 40
p = 0.45
# 計算樣本比例
p_hat = x/n
# 計算並列印檢驗統計量
print((p_hat-p)/(math.sqrt((p*(1-p))/(n))))
自己動手試一試 »
示例
使用 R,可以透過內建的數學函式來計算比例的檢驗統計量。
# 指定樣本出現次數 (x)、樣本大小 (n) 和零假設聲稱 (p)
x <- 10
n <- 40
p <- 0.45
# 計算樣本比例
p_hat = x/n
# 計算並輸出檢驗統計量
(p_hat-p)/(sqrt((p*(1-p))/(n)))
自己動手試一試 »
5. 做出結論
做出假設檢驗結論主要有兩種方法
- 臨界值方法將檢驗統計量與顯著性水平的臨界值進行比較。
- P 值方法將檢驗統計量的 P 值與顯著性水平進行比較。
注意:這兩種方法只是在呈現結論的方式上有所不同。
臨界值方法
對於臨界值方法,我們需要找到顯著性水平 (\(\alpha\)) 的臨界值 (CV)。
對於總體比例檢驗,臨界值 (CV) 是來自標準正態分佈的 Z 值。
此臨界 Z 值 (CV) 定義了檢驗的拒絕域。
拒絕域是標準正態分佈尾部的機率區域。
因為聲稱總體比例小於 45%,所以拒絕區域在左側尾部。
拒絕域的大小由顯著性水平 (\(\alpha\)) 決定。
選擇顯著性水平(\(\alpha\)) 為 0.01,即 1%,我們可以從 Z 表 或使用程式語言函式找到臨界 Z 值。
示例
使用 Python,可以使用 Scipy Stats 庫中的 norm.ppf()
函式來查詢左側尾部 \(\alpha\) = 0.01 的 Z 值。
import scipy.stats as stats
print(stats.norm.ppf(0.01))
自己動手試一試 »
使用任何一種方法,我們都可以找到臨界 Z 值約為 \(\approx \underline{-2.3264}\)
對於左側尾部檢驗,我們需要檢查檢驗統計量(TS)是否小於臨界值(CV)。
如果檢驗統計量小於臨界值,則檢驗統計量位於拒絕區域。
當檢驗統計量在拒絕域內時,我們拒絕零假設 (\(H_{0}\))。
在這裡,檢驗統計量(TS)約為 \(\approx \underline{-2.543}\),臨界值為 \(\approx \underline{-2.3264}\)
下圖顯示了此檢驗的圖示
由於檢驗統計量小於臨界值,我們拒絕原假設。
這意味著樣本資料支援備擇假設。
我們可以總結結論如下
在1% 的顯著性水平下,樣本資料支援“不到 45% 的諾貝爾獎獲得者出生在美國”的說法。
P 值方法
對於 P 值方法,我們需要找到檢驗統計量 (TS) 的 P 值。
如果 P 值
檢驗統計量經計算為 \( \approx \underline{-2.543} \)
對於總體比例檢驗,檢驗統計量是來自標準正態分佈的 Z 值。
因為這是一個左側尾部檢驗,我們需要找到 Z 值小於 -2.543 的 P 值。
我們可以使用 Z 表或使用程式語言函式找到 P 值
示例
使用 Python,可以使用 Scipy Stats 庫中的 norm.cdf()
函式來查詢 Z 值小於 -2.543 的 P 值。
import scipy.stats as stats
print(stats.norm.cdf(-2.543))
自己動手試一試 »
使用任何一種方法,我們都可以找到 P 值約為 \(\approx \underline{0.0055}\)
這告訴我們,顯著性水平 (\(\alpha\)) 需要大於 0.0055,即 0.55%,才能拒絕原假設。
下圖顯示了此檢驗的圖示
這個 P 值小於任何常見的顯著性水平(10%、5%、1%)。
因此,零假設在所有這些顯著性水平下都被拒絕。
我們可以總結結論如下
在10%、5% 和 1% 的顯著性水平下,樣本資料支援“不到 45% 的諾貝爾獎獲得者出生在美國”的說法。
使用程式設計計算假設檢驗的 P 值
許多程式語言可以計算 P 值來決定假設檢驗的結果。
對於大型資料集,使用軟體和程式設計計算統計量更為常見,因為手動計算會變得困難。
此處計算的 P 值將告訴我們零假設可以被拒絕的最低可能顯著性水平。
示例
使用 Python,可以使用 scipy 和 math 庫來計算比例左側尾部假設檢驗的 P 值。
在這裡,樣本量為 40,事件數為 10,檢驗的比例小於 0.45。
import scipy.stats as stats
import math
# 指定出現次數 (x)、樣本大小 (n) 和零假設中聲稱的比例 (p)
x = 10
n = 40
p = 0.45
# 計算樣本比例
p_hat = x/n
# 計算檢驗統計量
test_stat = (p_hat-p)/(math.sqrt((p*(1-p))/(n)))
# 輸出檢驗統計量的 P 值(左側尾部檢驗)
print(stats.norm.cdf(test_stat))
自己動手試一試 »
示例
使用 R,可以透過內建的 prop.test()
函式來查詢比例左側尾部假設檢驗的 P 值。
在這裡,樣本量為 40,事件數為 10,檢驗的比例大於 0.45。
# 指定樣本出現次數 (x)、樣本大小 (n) 和零假設聲稱 (p)
x <- 10
n <- 40
p <- 0.45
# 0.01 顯著性水平下的左側尾部比例檢驗 P 值
prop.test(x, n, p, alternative = c("less"), conf.level = 0.99, correct = FALSE)$p.value
自己動手試一試 »
注意:R 程式碼中的 conf.level
與顯著性水平相反。
在這裡,顯著性水平為 0.01,即 1%,因此置信水平為 1-0.01 = 0.99,即 99%。
左尾和雙尾檢驗
這是一個**左側**尾部檢驗的示例,其中備擇假設聲稱的引數**小於**零假設的聲稱值。
您可以在此處檢視其他型別的等效分步指南