天天看點

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

本節書摘來自華章計算機《r語言資料挖掘:實用項目解析》一書中的第2章,第2.8節,作者[印度]普拉迪帕塔·米什拉(pradeepta mishra),譯 黃芸,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。

零假設意味着什麼都沒有發生、平均值是恒定的,等等。對立假設則意味着有什麼發生了,且平均值與總體有所不同。進行假設檢驗的步驟如下:

1)提出零假設:提出關于總體的假設。例如,平均市内行車英裡數為40。

2)提出對立假設:如果證明零假設是錯的,那麼其他情況的機率有多大?例如,如果市内行車英裡數不是40,那是大于40,還是小于40?如果不等于40,則這是一個非定向對立假設。

3)計算樣本檢驗統計:檢驗統計可以是t-檢驗、f-檢驗、z-檢驗等。根據資料适用性和先前提出的假設選擇恰當的檢驗統計。

4)确定置信區間:有90%、95%和99%三個置信區間,根據相關的特定業務問題的準确率而定。置信區間的水準由研究人員或分析師來确定。

5)确定顯著性水準:如果置信區間是95%,則顯著性水準将為5%。由此可見顯著性水準的确定将有益于計算檢驗的p值。

6)結論:如果選擇的p值小于顯著水準值,則有理由否定零假設;否則,我們将認可零假設。

根據前面的檢驗假設步驟,以cars93為例來檢驗總體平均值。

假設某研究人員聲明樣本采集的所有汽車平均行車裡程數超過35。在有93輛汽車的樣本中,觀察到所有汽車平均行車裡程數為29。你應該認可,還是否定該研究人員的聲明?

接下來的代碼将解釋你應該怎樣對此下結論:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗
《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

下面介紹在已知方差情況下對樣本資料的總體均值進行單尾和雙尾比例檢驗分析。

利用資料集cars93,假設40%的美國産汽車的rpm(最大馬力時的每分鐘轉速)超過5000。從樣本資料得知,57輛汽車中有17輛的rpm超過5000。從上文你可得到什麼解釋?

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗
《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

如果對立假設是非定向假設,那麼這就是雙尾比例檢驗的例子。之前的計算不會有改變,除了臨界值的計算。詳細代碼如下:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

對連續型資料的雙樣本成對檢驗:用于雙樣本成對檢驗的零假設是指假設一個過程對研究對象沒有影響、試驗對試驗對象沒有影響,等等。對立假設聲明存在過程的顯著統計影響、試驗的有效性或在對象上的作用。

雖然在cars93中沒有這樣的變量,我們仍然假設在不同汽車品牌的最小價格和最大價格之間有成對關系。

雙樣本t檢驗的零假設:平均價格無差異。

對立假設:平均價格有差異。

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

由于p值小于0.05,是以最大價格和最小價格之差在95%置信區間内有顯著差異。

對連續型資料的雙樣本不成對檢驗:假設在cars93資料集中高速路的裡程數和市内裡程數是有差别的。如果兩者有顯著差異,可以通過獨立的樣本t檢驗來比較各自的平均值。

零假設:高速路的mpg和市内的mpg沒有差别。

對立假設:高速路的mpg和市内的mpg有差别。

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

由雙樣本t檢驗可知,當兩個樣本互相獨立時,p值小于0.05,是以我們可以否定假設高速路和市内的平均裡程數無差别的零假設,即高速路和市内的平均裡程數有顯著差異。這可用略微不同的方法展現出來,即零假設手動擋與自動擋汽車各自的市内平均行車裡程數不同:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

從以上的檢驗可知,結論自動擋與手動擋汽車的市内平均行車裡程數有顯著差異,因為p值小于0.05。

在進行t檢驗之前,檢查資料的正态性非常重要。一個變量的正态性可用shapiro檢驗函數檢測:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗
《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

由市内每加侖行車裡程數的正态分位圖和直方圖可知,裡程數變量沒有呈正态分布。因為該變量不是正态分布的,是以需要采取非參數方法比如wilcoxon符号秩檢驗或kolmogorov-smirnov檢驗。

比較雙樣本的方差,采用f檢驗作為統計量:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

因為p值小于0.05,我們可以否定手動擋與自動擋汽車在高速路的裡程數的方差無差異的零假設。這表明兩個樣本的方差有95%置信水準的統計顯著差異。

這兩組樣本的方差還可以用bartlett檢驗測出:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

由以上檢驗也可以得出這樣的結論,即關于方差相同的零假設可在0.05的顯著性水準拒絕,可證明這兩組樣本有顯著差異。

單因子方差分析:可使用單因子方差分析。分析的變量是rpm,分組變量是cylinders(汽缸個數)。

零假設:不同缸數的平均rpm值無差異。

對立假設:至少一種缸數的平均rpm有差異。

代碼如下:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

由上面的方差分析可知,p值小于0.05,是以否定零假設。這意味着至少有一種缸數的平均rpm存在顯著差異。為了識别哪一種缸數是不同的,可在方差分析模型的結果上執行事後檢驗:

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗
《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

隻要調整後的p值小于0.05,rpm的平均差異将顯著有别于其他分組。

雙因子方差分析及其事後檢驗:這裡研究的因子是origin(是否美國産)和airbags(安全氣囊規格)。需要檢驗的假設是:這兩個分類變量對rpm變量是否有影響?

《R語言資料挖掘:實用項目解析》——2.8 假設檢驗

繼續閱讀