選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

統計 - 總體均值估計


總體 均值 是一個數值型總體變數的平均值。

置信區間用於 估計 總體均值。


估計總體均值

來自 樣本 的統計量用於估計總體引數。

引數最可能的值是 **點估計**。

此外,我們還可以計算估計引數的 **下界** 和 **上界**。

誤差範圍 是下界和上界與點估計之間的差值。

下界和上界共同定義了一個 **置信區間**。


計算置信區間

以下步驟用於計算置信區間

  1. 檢查條件
  2. 找到點估計
  3. 確定置信水平
  4. 計算誤差範圍
  5. 計算置信區間

例如

  • 總體:諾貝爾獎得主
  • 變數:獲得諾貝爾獎時的年齡

我們可以抽取一個樣本,並計算該樣本的均值和 標準差

樣本資料用於估計 **所有** 諾貝爾獎獲得者的平均年齡。

透過隨機選擇 30 位諾貝爾獎獲得者,我們發現

樣本中的平均年齡是 62.1 歲

樣本中年齡的標準差是 13.46

根據這些資料,我們可以按照以下步驟計算置信區間。


1. 檢查條件

計算均值置信區間的條件是

  • 樣本是隨機選擇
  • 並且滿足以下任一條件:
    • 總體資料呈正態分佈
    • 樣本量足夠大

通常,30 這樣的中等樣本量就足夠大了。

在此示例中,樣本量為 30 且是隨機抽取的,因此條件已滿足。

注意: 資料是否呈正態分佈可以透過專門的統計檢驗來檢查。



2. 查詢點估計

點估計是 樣本均值 (\(\bar{x}\))。

計算樣本均值的公式是將所有值 \(\sum x_{i}\) 的總和除以樣本大小 (\(n\))

\(\displaystyle \bar{x} = \frac{\sum x_{i}}{n}\)

在我們這個例子中,樣本中的平均年齡是 62.1 歲。


3. 確定置信水平

置信水平用百分比或十進位制數表示。

例如,如果置信水平是 95% 或 0.95

剩餘的機率 (\(\alpha\)) 是:5%,或 1 - 0.95 = 0.05。

常用的置信水平有

  • 90%,\(\alpha\) = 0.1
  • 95%,\(\alpha\) = 0.05
  • 99%,\(\alpha\) = 0.01

注意: 95% 的置信水平意味著如果我們抽取 100 個不同的樣本併為每個樣本計算置信區間

真實的引數將在 100 個置信區間中的 95 個內。

我們使用 學生 t 分佈 來查詢置信區間的 **誤差範圍**。

t 分佈根據樣本大小透過“自由度”(df)進行調整。

自由度是樣本大小 (n) - 1,在這個例子中是 30 - 1 = 29

剩餘機率 (\(\alpha\)) 被分成兩半,一半在分佈的左尾區域,一半在右尾區域。

分隔尾部區域和中間區域的 t 值稱為 **臨界 t 值**。

以下是標準正態分佈的圖表,顯示了 29 個自由度 (df) 下不同置信水平的尾部區域 (\(\alpha\))。

Student's t-distributions with two tail areas, with different sizes.


4. 計算誤差範圍

誤差範圍是點估計與下界和上界之間的差值。

比例的誤差範圍 (\(E\)) 是透過 臨界 t 值 和 **標準誤差** 計算的。

\(\displaystyle E = t_{\alpha/2}(df) \cdot \frac{s}{\sqrt{n}} \)

臨界 t 值 \(t_{\alpha/2}(df) \) 是根據標準正態分佈和置信水平計算的。

標準誤差 \(\frac{s}{\sqrt{n}} \) 是根據樣本標準差 (\(s\)) 和樣本大小 (\(n\)) 計算的。

在我們這個例子中,樣本標準差 (\(s\)) 為 13.46,樣本大小為 30,標準誤差為

\(\displaystyle \frac{s}{\sqrt{n}} = \frac{13.46}{\sqrt{30}} \approx \frac{13.46}{5.477} = \underline{2.458}\)

如果我們選擇 95% 作為置信水平,則 \(\alpha\) 為 0.05。

所以我們需要找到臨界 t 值 \(t_{0.05/2}(29) = t_{0.025}(29)\)

臨界 t 值可以使用 t 表 或程式語言函式找到。

示例

使用 Python,可以使用 Scipy Stats 庫的 t.ppf() 函式找到 \(\alpha\)/2 = 0.025 和 29 個自由度的 t 值。

import scipy.stats as stats
print(stats.t.ppf(1-0.025, 29))
自己動手試一試 »

示例

使用 R,可以使用內建的 qt() 函式找到 \(\alpha\)/2 = 0.025 和 29 個自由度的 t 值。

qt(1-0.025, 29)
自己動手試一試 »

使用任何一種方法,我們都可以找到臨界 t 值 \(t_{\alpha/2}(df)\) 約為 \(\underline{2.05} \)

標準誤差 \(\frac{s}{\sqrt{n}}\) 約為 \(\underline{2.458}\)

所以誤差範圍 (\(E\)) 是

\(\displaystyle E = t_{\alpha/2}(df) \cdot \frac{s}{\sqrt{n}} \approx 2.05 \cdot 2.458 = \underline{5.0389}\)


5. 計算置信區間

置信區間的下界和上界是透過將誤差範圍 (\(E\)) 從點估計 (\(\bar{x}\)) 中減去和加起來找到的。

在我們這個例子中,點估計是 0.2,誤差範圍是 0.143,那麼

下界是

\(\bar{x} - E = 62.1 - 5.0389 \approx \underline{57.06} \)

上界是

\(\bar{x} + E = 62.1 + 5.0389 \approx \underline{67.14} \)

置信區間是

\([57.06, 67.14]\)

我們可以總結置信區間為

諾貝爾獎獲得者平均年齡的 **95%** 置信區間在 **57.06 到 67.14 歲** 之間


使用程式設計計算置信區間

置信區間可以用許多程式語言計算。

對於大型資料集,使用軟體和程式設計計算統計量更為常見,因為手動計算會變得困難。

注意: 使用程式設計程式碼的結果將更準確,因為手工計算時會進行值舍入。

示例

使用 Python,可以使用 scipy 和 math 庫來計算估計比例的置信區間。

在這裡,樣本大小是 30,樣本均值是 62.1,樣本標準差是 13.46。

import scipy.stats as stats
import math

# 指定樣本均值 (x_bar),樣本標準差 (s),樣本大小 (n) 和置信水平
x_bar = 62.1
s = 13.46
n = 30
confidence_level = 0.95

# 計算 alpha,自由度 (df),臨界 t 值和誤差範圍
alpha = (1-confidence_level)
df = n - 1
standard_error = s/math.sqrt(n)
critical_t = stats.t.ppf(1-alpha/2, df)
margin_of_error = critical_t * standard_error

# 計算置信區間的下界和上界
lower_bound = x_bar - margin_of_error
upper_bound = x_bar + margin_of_error

# 列印結果
print("臨界 t 值: {:.3f}".format(critical_t))
print("誤差範圍: {:.3f}".format(margin_of_error))
print("置信區間: [{:.3f},{:.3f}]".format(lower_bound,upper_bound))
print("總體均值的 {:.1%} 置信區間是:".format(confidence_level))
print("介於 {:.3f} 和 {:.3f} 之間".format(lower_bound,upper_bound))
自己動手試一試 »

示例

R 可以使用內建的數學和統計函式來計算估計比例的置信區間。

在這裡,樣本大小是 30,樣本均值是 62.1,樣本標準差是 13.46。

# 指定樣本均值 (x_bar),樣本標準差 (s),樣本大小 (n) 和置信水平
x_bar = 62.1
s = 13.46
n = 30
confidence_level = 0.95

# 計算 alpha,自由度 (df),臨界 t 值和誤差範圍
alpha = (1-confidence_level)
df = n - 1
standard_error = s/sqrt(n)
critical_t = qt(1-alpha/2, 29)
margin_of_error = critical_t * standard_error

# 計算置信區間的下界和上界
lower_bound = x_bar - margin_of_error
upper_bound = x_bar + margin_of_error

# 列印結果
sprintf("臨界 t 值: %0.3f", critical_t)
sprintf("誤差範圍: %0.3f", margin_of_error)
sprintf("置信區間: [%0.3f,%0.3f]", lower_bound, upper_bound)
sprintf("總體均值的 %0.1f%% 置信區間是:", confidence_level*100)
sprintf("介於 %0.4f 和 %0.4f 之間", lower_bound, upper_bound)
自己動手試一試 »

注意: R 還有一個內建函式用於計算總體均值的置信區間。

示例

R 可以使用內建的 t.test() 函式來計算估計均值的置信區間。

在這裡,樣本是 30 個隨機生成的值,均值為 60,標準差為 12.5,使用 rnorm() 函式生成樣本。

# 指定樣本大小 (n) 和置信水平
n = 30
confidence_level = 0.95

# 設定隨機種子並生成均值為 60,標準差為 12.5 的樣本資料
set.seed(3)
sample <- rnorm(n, 60, 12.5)

# t.test 函式用於樣本資料,置信水平,並選擇 $conf.int 選項
t.test(sample, conf.level = confidence_level)$conf.int
自己動手試一試 »

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援