樣本分佈不正態?數據變換來救場!| 協和八
原創 張之昊
我們在上一集《只有15個標本,也能指望 t 檢驗嗎?》中研究了這麼一個問題:樣本量到底要有多大,t 檢驗才靠譜?
希望你還記得這個問題的答案——
總體分佈說了算!
更具體一點說,總體分佈越接近正態分佈,抽樣分佈(樣本的算術平均值所服從的分佈)就在樣本量從 1 增長到正無窮的過程中就越快趨向於正態分佈。
換言之,對於一個給定的樣本量 n,它所對應的抽樣分佈就越像一個正態分佈。
而抽樣分佈的正態性越好,t 檢驗就越準確。
你也一定知道,總體分佈是看不見摸不著的,我們手頭上只有樣本的分佈。幸運的是,只要樣本量不是小到只有三五個資料點,樣本分佈往往能對我們認識總體分佈有很大的幫助。再加上對總體資料來源的背景知識的瞭解,我們通常能對總體分佈有多接近正態分佈作出不太壞的推斷。
那麼問題來了,假如我們的總體分佈不怎麼正態,樣本量也不是很大,感覺用 t 檢驗好像有點兒夠嗆,這時該怎麼辦?
資料不正態能怎麼辦?
第一條出路,很簡單,增加樣本量!曾記否,t 檢驗是在抽樣分佈上進行的檢驗——中心極限定理說了,只要樣本量越來越大,甭管那總體分佈原來長啥樣兒,抽樣分佈遲早都會變成正態分佈。到了那時,t 檢驗不就想怎麼用就怎麼用了嘛!
如果我只能給你這麼一條建議的話,估計你和「說人話的統計學」欄目的友誼小船就要這樣翻掉了:
「樣本量你說增加就能增加啊?討經費、找病人、養動物、做實驗、收資料、搞分析,哪樣是容易的呢?寶寶心裡的苦你曉得哇!?」
我懂我懂!
告訴你一個好消息你聽了一定會高興:
我們還有另外兩條出路。
第二條出路,在做 t 檢驗之前,我們可以先對資料做一下變換。如果我們能把總體分佈的形狀動動手術,讓它和正態分佈更接近一些,那麼抽樣分佈就能更快地趨近正態分佈。因此,在樣本量保持不變的情況下,基於新的總體的抽樣分佈就會變得更正態,用 t 檢驗也就沒問題了。
而第三條出路呢,則是更徹底的釜底抽薪之計——我們為什麼要在 t 檢驗這一棵樹上吊死呢?t 檢驗要求抽樣分佈是正態的,有沒有別的檢驗能幹 t 檢驗的活兒,但是不要求抽樣分佈的正態性?甚至說,有沒有別的檢驗可以不用抽樣分佈?讓我們來擲地有聲地回答一句:有!
今天我們就先來一起研究一下這第二條出路,學學怎麼把資料變換這一招玩兒轉。至於第三條出路要怎麼走通,我們暫時先按下不表,留待後面幾集再為大家一一道來。
怎樣的資料變換會有用?
什麼是 數據變換(data transformation)?聽起來好像挺高深,實際上沒什麼複雜。
舉個最簡單不過的例子,比如說土豪的你春節時候去了趟美國,有一天你抱著考察資本主義市場經濟的目的走進一家超市,發現了你最愛吃的開心果。可是你看了看標價,腦子有點兒暈——上面用的單位是美元/磅。於是你默默地掏出了手機,把價格換算成了軟妹幣/斤(發現其實賣得比國內還貴!)。這其實就是一次資料變換,數位不一樣了,可說的還是一件事,只不過是換了個尺度而已。
廣義上說,如果我們有一個樣本量為 n 的樣本,資料變換指的就是選擇某個函數 f,將其作用在樣本上,得到新的樣本 的過程。
雖然我們是對樣本做變換,但我們同時也改變了總體的分佈,因為總體的任何一個可能的取值 x 也都搬家到了的位置上。
那麼我們應該選擇一個怎樣的函數 呢?
首先不難想到,這個函數 f有一個最起碼的要求:它得保持原來樣本裡頭資料的大小次序關係。也就是說,如果原來樣本裡 ,變換以後還得有 。
這個道理很明顯,無論是 t 檢驗還是什麼別的統計方法,說來說去無非就是研究資料大小與什麼因素有關。要是資料的大小都被弄亂了,那後續的統計分析也就都亂套了。
換言之,函數 f 得是單調的。
在單調性以外,函數 f 還需要有什麼性質?所謂「不忘初心」,我們得記住我們做變化最開始的目的:改善總體分佈的正態性。本著對症下藥的思路,我們先來看看,如果總體分佈不正態,問題往往出在哪裡。
我們對正態分佈現在很熟悉了,它的概率分佈直觀上來說它有兩大特徵,一是左右對稱,二是中間高兩邊低。在真實世界中收集得到的資料,中間高兩邊低這點往往不難滿足,因為絕大多數連續變數在非常小和非常大這兩頭的可能性都很小(這裡也有中心極限定理的作用,想想看為什麼?)。但是,左右對稱這一點有時候會出問題,使得左邊(靠近負無窮)或右邊(靠近正無窮)多出一個長尾巴。與「正態」相對,這種概率分佈左右不對稱的情形被稱為「偏態」(skewness)。
而我們的變換函數 f 的任務,就是要想辦法把總體(或樣本)分佈一側多出來的尾巴縮回去。
如何對右偏資料進行變換
現在,我們需要分情況討論一下。在實際生活中,最常見的情形是靠近正無窮的一側有一個長尾巴(如圖1左),習慣上稱為「右偏」(right-skewed)或「正偏態」(positive skewness)。許多人會有點兒困惑,覺得圖上分佈的那個峰明明是向左邊負數一側偏的,怎麼叫「右偏」「正偏態」呢?要記住,當我們描述偏態的方向時,說的是分佈的尾巴,而不是峰。這本身沒有什麼大道理可講,就是一種約定俗成而已。
圖1 一個右偏(正偏態)的總體分佈
右偏的分佈之所以常見,是因為有許多變數的取值有一個明確的下界(通常是 0 )而沒有上界。最典型的例子就是人均收入。這個例子我們在《數據到手了,第一件事先幹啥?》裡也提到過。首先,收入不可能是負的。其次,對於經濟狀況正常的社會,處於貧困狀態的人相對較少,多數人都在小康水準上下浮動,這就保證了總體分佈基本呈現中間高、兩邊低的形態。然而,總會有極少數像比爾蓋茨、巴菲特那樣的巨富,待在分佈右側很遠的地方——而且更虐心的是,收入這事兒可是沒有上限的。同樣的討論適用於許多其他情形,在生物醫學中,很多變數的分佈都有類似的性質,尤其是那些健康人群正常值比較小(因而峰值比較靠近下限)的生理指標。
相信你還記得我們在上上集《不是正態分佈,t 檢驗還能用嗎?》裡說過的判斷樣本分佈正態性的兩個方法——頻率長條圖和 q-q 圖。快速重溫一下,假設我們有一個來自圖 1 左邊的總體分佈的樣本,如果對此樣本畫出頻率長條圖和 q-q 圖(圖 1 中、右),可以看到頻率長條圖大體和總體分佈相似,樣本分佈右側有個尾巴,而 q-q 圖中各資料點並不完全在一條直線上,這些都說明樣本分佈不太正態。
好了,像這樣一個分佈,我們應該用怎樣的函數 f 來作變換?記得我們說過,函數 f 的最基本條件需要是單調的。為了使資料點的大小次序不會顛倒過來,我們進一步把考慮範圍縮小到單調增函數。為了要把分佈右側的尾巴縮短一點,我們需要這樣一個函數 f,它在 y 比較小的時候增長得比較快,而在 y 比較大的時候增長得慢一些。這樣一來,在原來分佈右邊相距較遠的任意兩個點之間的距離就會相對變小,從而分佈的偏態就能得到改善了。
回想一下中學數學,有什麼常見的單調增長函數是越漲越慢的呢?不難想到,對數函數 、平方根 、甚至三次方根 等函數都具備這樣的性質(圖 2)。滿足這樣性質的函數其實有無數個,這幾個由於形式簡單,因此比較常用。對數變換另外還有一個優良的性質,使其成為了比較受歡迎的選擇,這個性質我們會在本文末尾提到。
圖2 常見的用於右偏分佈的變換函數
從圖 2 中也能看到,這些變換函數對 y 較大時的壓縮程度不同,變換後 f(y) 的取值範圍也不同。到底哪一個效果更好(也可能效果都不好),取決於具體的問題和資料。通常的做法是嘗試若干種變換函數,然後對變換後的新樣本重新檢驗正態性(如頻率長條圖、q-q 圖或夏皮羅-威爾克檢驗等方法),選擇正態性最好的樣本用於後續分析。
下面我們就分別用對數函數 和平方根函數 對圖1中右偏的樣本來做個變換,看看效果如何(對數變換的結果見圖 3,平方根變換見圖 4)。
圖3 使用對數函數對圖1中的右偏樣本作變換
圖 4 使用平方根函數對圖1中的右偏樣本作變換
如果把圖 3、圖 4 和前面的圖 1 做比較,容易看到,這兩個變換都對總體和樣本的正態性起到了改善作用。不論從總體分佈和頻率長條圖的對稱性,還是從 q-q 圖中資料點與直線的偏離程度來說,變換後的分佈都變得更正態了。如果我們看得更仔細一點,在這個例子中對數函數的效果稍微更好一些,因為變換後總體和樣本分佈幾乎完全是對稱的,而平方根變換後分佈還是有一點右偏。
要記住的是,這只是一個個別例子,我們並不能就此認為對數變換和平方根變換總能起到良好的效果。有時候,資料變換非但不能改善正態性,甚至還會引進原本沒有的偏態(圖 5)。因此,當我們對資料作變換時,千萬不能想當然,覺得做了變換就一定能把分佈給變正態了。做變換後,重新檢查正態性是必不可少的步驟。
圖5 一個對數變換的不成功例子
第一列:原資料的總體分佈、樣本頻率長條圖和 q-q 圖(這個分佈來自上一集《只有15 個標本,也能指望 t 檢驗嗎?》中的倒數第二例)。
第二列:將樣本進行對數變換後,新樣本的頻率長條圖和 q-q 圖(總體分佈略)。可見樣本從原來的右偏變成了左偏。
另外,你也許注意到,前面討論的幾個變換函數都要求原資料大於 0。如果資料裡有負數或 0 怎麼辦?我們只需將所有資料加上一個正的常數,使得資料全部為正即可。
如何對左偏資料進行變換
前面我們討論了對右偏資料的變換方法,那麼左偏的資料又該如何?在現實生活中,左偏的分佈比右偏稍微少見一些。最經典的例子當屬人或動物的壽命(圖 6)。在環境條件良好的情況下,動物在較低年齡就死亡的概率很低,但是當年齡達到該物種本身生物學特性所容許的某個最高水準前後,死亡率就會大幅升高,然後再迅速降低(因為已經沒有什麼個體能活那麼長了),因而造成分佈的左偏。
圖6 人或動物的壽命的分佈通常是左偏的
本圖為 2010-12 年英國女性在各年齡每 100,000 人中的死亡人數的期望的分佈。
圖片來源:http://understandinguncertainty.org/why-life-expectancy-misleading-summary-survival
不難想到,左偏和右偏的資料互為鏡像關係,因此一種轉換的辦法是,先把資料取個負號(為了使資料重新變回正數,往往還要再加個常數),然後就按右偏資料的辦法處理。另一種解決方案則是使用增長率越來越快的一類單調增函數,如、等。與之前相似,沒有一種變換是萬能的,因此我們在資料變換後必須重新檢查樣本的正態性。
至此為止,我們提到了許多可用於資料變換的函數,它們各有所長,我們得根據實際問題的特點按需取用。選擇最合理的變換形式,不是一件容易的事。大約 50 多年前,兩位統計學家兼好基友 Box 和 Cox(不要問我為什麼他倆的名字是押韻的)專門為深度懶人癌患者提出了一套變換方法,稱為 Box-Cox 變換,可以根據一定的標準自動找出最佳的變換函數。由於篇幅所限,今天我們先不細說。
數據變換的局限性
在今天這一集裡,我們討論了利用資料變換來改善正態性的方法。雖然我們是針對 t 檢驗對於正態性的要求而引出的這個話題,但是這一方法可以用在許多需要總體或樣本分佈滿足正態性的場合,比如我們以後將會講到的方差分析、線性回歸等。正如所有科學方法一樣,它並不是全能的。要用好這個工具,我們還需要對其局限性有所瞭解。
第一,資料變換並不能解決所有非正態性的問題。從上面的一些例子裡,我們已經能看到,對於特定的某組資料,一個變換方法並不一定能把資料變為服從正態分佈。有些時候,即便我們窮盡所有不同形式的函數,一個分佈也不可能被轉化為正態分佈——比如說離散型的分佈。還有一些其他的分佈(比如有不止一個峰的分佈),可以通過一些奇形怪狀的變換函數弄成正態的,但這會不可避免地對資料帶來太多的扭曲,進一步的分析也就很成問題了。
第二,對資料進行變換後,重新進行原來計畫的統計檢驗,其意義會發生變化。比如說,我們想要比較兩組資料的均值是否有差別,但是發現樣本分佈並不正態,於是對資料做了一個平方根變換。當我們對變換後的資料使用 t 檢驗時,我們檢驗的不再是兩組資料均值的差別,而是在檢驗樣本中資料平方根的均值之間的差別。雖然對所有資料開平方根後取均值仍然是對資料大體趨勢的一個概括,但是仍然與變換前資料的算術平均值有著不同的意義,也失去了我們曾經在《9.算術平均數:簡單背後有乾坤》中討論過的算術平均數的優點。對於其他更複雜的變換,我們到底是在檢驗什麼就更加模糊了。
值得一提的是,這裡有一個例外就是對數變換!我們來看看為什麼。對數變換以後,新的資料的算術平均數是:
上面的推演運用了對數運算的基本性質。在最後一步對數符號裡的,被稱為幾何平均數(geometric mean)。和我們熟悉的算術平均數一樣,它也是表示樣本資料集中趨勢的一個統計量。
換言之,如果對進行對數變換後的資料平均值使用 t 檢驗,實際上是在對樣本的幾何平均數做統計推斷。
正是因為對數變換有相對明確的意義,它也成為了資料變換函數裡比較流行的一種。
瞭解了資料變換的這些局限性,你一定想知道,當我們研究的問題不適於使用資料變換時,是否有其他的替代方案呢?
且聽下回分解。
注:文中圖片未作特別說明者均為作者自繪。
本系列全部文章
第 1 章 高屋建築看統計
你真的懂p值嗎?
做統計,多少資料才算夠?(上)
做統計,多少資料才算夠?(下)
提升統計功效,讓評審心服口服!
你的科研成果都是真的嗎?
見識資料分析的「獨孤九劍」
貝葉斯vs頻率派:武功到底哪家強?
第 2 章 算術平均數與正態分佈
數據到手了,第一件事先幹啥?
算術平均數:簡單背後有乾坤
正態分佈到底是怎麼來的?
第 3 章 t 檢驗:兩組平均數的比較
想玩轉t檢驗?你得從這一篇看起
就是要實用!t 檢驗的七十二變
不是正態分佈,t 檢驗還能用嗎?
只有15個標本,也能指望 t 檢驗嗎?
樣本分佈不正態?數據變換來救場!
作者:張之昊
編輯:燈盞細辛
留言列表