close

數據變換的萬能鑰匙:Box-Cox變換 | 協和八

原創 張之昊 

注:本文為協和八「說人話的統計學」系列之 樣本分佈不正態?數據變換來救場! 的延伸閱讀

讀過兩天前推送的《樣本分佈不正態?數據變換來救場!》,你一定已經熟悉了資料變換的目的和意義,也瞭解了常用的若干種資料變換函數,如

WeChat 圖片_20200520115130.jpg

WeChat 圖片_20200520115135.jpg

WeChat 圖片_20200520115242.jpg

等。

至於說什麼時候應該用哪個函數來作變換,原文也針對常見的幾種情況給出了一些建議。

當然,我們會遇到的資料紛繁複雜,究竟用什麼函數效果比較好,還是得通過反復嘗試並實際驗證才知道。

就好像用單反照相機的手動模式拍照一樣,這可是一件需要經驗、知識和運氣的事兒。你的內心在呼喚:

能不能有自動模式(或者乾脆來個傻瓜卡片機)呢?

這裡我們就來簡單介紹一下一種根據資料自動尋找「最佳」變換函數的方法——

Box-Cox 變換

Box-Cox 變換在上世紀六十年代由兩位英國統計學家 George E.P. Box David Cox 提出( Box 他老人家幾年前剛剛謝世,而 Cox 現已 92 歲高齡)。他們兩位葫蘆裡賣的是什麼藥呢?

我們先來看看 Box-Cox 變換的數學形式。

和以前一樣,假設樣本裡一共有 n 個資料點,分別是

WeChat 圖片_20200520115248.jpg

如果我們把變換後新的資料點記為

 

WeChat 圖片_20200520115423.jpg

 

(你會問這個 λ 是哪裡冒出來的?別著急,我們馬上解釋),那麼有:

WeChat 圖片_20200520115453.jpg

看著很複雜?我們來把它解剖一下,你會發現其實挺簡單。這裡出現的 λ,是一個有待確定的常數。這個常數如何確定我們稍等一會再說,現在我們先假設 λ 的值已經給定了,變換會是個什麼樣子?

把目光投向上述定義的第二行,你會看到一位老熟人——對數變換。不錯,如果 λ  0,那麼 Box-Cox 變換讓我們做的正是對樣本取對數。

如果 λ≠0,觀察第一行的算式,我們能看到它的核心部分其實就是,後邊的 -1 和分母的 λ 只是兩個對進行拉伸和平移的常數,並不會影響分佈的形狀。是什麼呢?不就是個關於 y 的冪函數嘛!當 λ 分別取下列數值時,我們會得到一系列耳熟能詳的函數:

WeChat 圖片_20200520115548.jpg

 

你看,我們之前說過的常用的變換函數幾乎都出現了!寫到這裡其實並沒有什麼神奇的,無非只是利用 λ 把這些不同的函數寫出一個統一的運算式而已。最關鍵的問題在於怎樣選定一個最優的 λ,使得變換後的樣本(及總體)正態性最好。

設想一下,在最理想的情形下,經過變換以後,新的樣本中資料點服從正態分佈。我們以前講過,要確定一個正態分佈,只需要兩個參數,一是均值(確定分佈所在的位置),二是標準差(確定分佈的形狀有多寬)。根據轉化後的資料,我們可以估計出這兩個參數(估計方法參看《想玩轉t檢驗?你得從這一篇看起》),進而用正態分佈的概率密度函數算出每個數據點在該正態分佈下出現的概率。

由於各個數據點是互相獨立的,因此所有這些單個資料點的概率的乘積就是整個樣本出現的概率(即似然函數值)。

如果變換以後新的樣本並不服從正態分佈呢?

我們仍然可以通過上面的方法算出似然。

然而,變換後的樣本實際並不服從正態分佈,這個似然函數是生搬硬套進去的,似然函數值就會很小。

就好比說,你認為在北京生活的人 99% 都是女的,結果你隨便一出門,視野範圍內有 7 4 女,立馬就傻眼了,因為根據你的理論,隨機遇到 11 個人裡只有 4 個女性的概率(似然)非常低。反過來,如果你認為男女各占一半,11 人中有 7 4 女就很稀鬆平常(即似然函數值比較大)。

所以,要找到使變換後樣本正態性最好的那個 λ,我們只需在所有的 λ 裡找出使得正態假設下似然函數最大的那一個。聽起來是不是有點耳熟?這個解決方案的思想與我們在《算術平均數:簡單背後有乾坤》中介紹的「極大似然估計」是一樣的。有了思路, λ 這樣的髒活累活交給電腦來幹就好了,現在許多資料分析和統計軟體都已實現了一鍵式 Box-Cox 變換的操作。

說了這麼多,咱也得是騾子是馬拉出來遛遛是吧?你也許還記得之前兩集文章裡我們碰到過一個很難纏的尾巴很長的總體分佈,其抽樣分佈逼近正態分佈的速度很慢,對數變換也搞不定它。這裡我們就用它來試一試 Box-Cox 變換(圖1)。容易看到,Box-Cox變換取得了相當好的效果,變換後頻率長條圖基本對稱,而 q-q 圖上各點基本在一條直線上。

 

WeChat 圖片_20200520115745.jpg

 

1    Box-Cox 變換效果示例

第一列:原資料的總體分佈、樣本頻率長條圖和 q-q 圖。

第二列:將樣本進行 Box-Cox 變換後,新樣本的頻率長條圖和 q-q 圖(總體分佈略)。


 

那麼,是怎樣的 λ 才能有這樣好的效果呢?答案是0.16,大致相當於開6次方根。如果光靠瞎碰,估計找到這個變換不太容易吧?

最後,我們還要提個醒兒,儘管 Box-Cox 變換十分強大,但是它依舊不是全能的。它只能在冪函數和對數函數中「搜索」出最好的變換,但不能保證一定能達到正態性。同時,我們之前說過資料變換方法的局限性,也都適用於它。

所以,雖然利器在手,要把它用好,還是得自己功夫深哦!


注:文中圖片為作者自繪。

本系列文章

1 章  高屋建築看統計

1.你真的懂p值嗎?

2.做統計,多少資料才算夠?(上)

3.做統計,多少資料才算夠?(下)

4.提升統計功效,讓評審心服口服!

5.你的科研成果都是真的嗎?

6.見識資料分析的「獨孤九劍」

7.貝葉斯vs頻率派:武功到底哪家強?

 

2 章  算術平均數與正態分佈

8.數據到手了,第一件事先幹啥?

9.算術平均數:簡單背後有乾坤

10.正態分佈到底是怎麼來的?

 

3   t 檢驗:兩組平均數的比較

11.想玩轉t檢驗?你得從這一篇看起

12.就是要實用!t 檢驗的七十二變

13.不是正態分佈,t 檢驗還能用嗎?

14.只有15個標本,也能指望 t 檢驗嗎?

15.樣本分佈不正態?數據變換來救場!

16.數據變換的萬能鑰匙:Box-Cox變換

 

作者:張之昊

編輯:燈盞細辛

 

 

 

arrow
arrow
    創作者介紹
    創作者 HCHUNGW 的頭像
    HCHUNGW

    HCHUNGW的部落格

    HCHUNGW 發表在 痞客邦 留言(0) 人氣()