iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 9
0
Big Data

資料科學:使用 Clojure系列 第 9

Day 09 - 單元二:推論統計(二)

推論統計除了計算樣本特質外,另一個重點就是從樣本去建構假說,並進行假說測試。一般來說,常見的假說檢定流程如下:

  1. 兩個群體,例如:服藥(控制組)、未服藥(對照組)
  2. 這兩個群體其實都是「樣本」,因為我們不可能給全部的病人服藥來測試效果。
  3. 從樣本的分布去推斷兩者的母群體在分布上的差異是否可稱為「統計上顯著」

假說測試(Hypothesis testing)

虛無假說(Null hypothesis)

假說的建構:一般會將「沒有差別」設為「虛無假說」(null hypothesis),而整個統計的推論上是以假設虛無假說為真,直到被統計推翻為止。以本文的數據,即是討論「新網站是否提升訪客停留時間?」,虛無假說可設定為:「沒有影響」

顯著性(Significance)

兩個分布的差異稱為顯著性。底下的部分討論統計的型一錯誤與型二錯誤(Type I Error & Type II Error),描述「顯著性達到差異,可是實際上兩組沒差」及「顯著性沒有達到差異,可是實際上兩組有差」的狀況。

Status H0 false H0 true
Reject H0 True negative Type I Error
Accept H0 Type II Error True positive

一般來說,顯著性達標與否的標準會因為實驗設計而變動,學術界把該標準值叫做 α。而試驗中,兩群的兩個標準差的差異 α 大約是 0.05,在多數實驗中,< 0.05 的檢定結果就會被稱為顯著。

值型 z 檢定(z-test)

z-test 是一個通過比較標準差與平均值來了解差異的一種簡易檢定,適用於常態分布資料。

資料科學小訣竅:檢定有適用的條件,例如「常態分佈」跟「對數分布」能使用的檢定就有所差異。甚至是無法得知母群體的情況要改用無母數檢定。

關於檢定公式,可參考說明網頁 z-test

(defn pooled-standard-error [a b]
  (i/sqrt (+ (/ (i/sq (standard-deviation a)) (count a))
             (/ (i/sq (standard-deviation b)) (count b)))))

(defn z-stat [a b]
  (-> (- (mean a) (mean b))
      (/ (pooled-standard-error a b))))

(defn z-test [a b]
  (s/cdf-normal (z-stat a b)))

首先計算 z-stat 的返回值「平均值之標準化值」。通過查詢此值在常態分布中的位置,了解 P 值的大小,來判定檢定結果是否足夠造成顯著性。


上一篇
Day 08 - 單元二:推論統計(一)
下一篇
Day 10 - 單元三:相關性(一)
系列文
資料科學:使用 Clojure30

尚未有邦友留言

立即登入留言