首頁  >  文章  >  後端開發  >  如何在Python中執行Brown-Forsythe檢驗

如何在Python中執行Brown-Forsythe檢驗

WBOY
WBOY轉載
2023-08-31 23:53:041468瀏覽

Brown-Forsythe 檢定是一種統計檢驗,用於確定兩個或多個組別的變異數是否相等。 Levene 檢定使用與平均數的絕對偏差,而 Brown-Forsythe 檢定則使用與中位數的偏差。

檢定中使用的原假設如下 -

H0:組別(總體)的變異數相等

備擇假設是變異數不相等 -

H1:組別(群體)的變異數不相等

為了執行測試,我們計算每組的中位數以及與中位數的絕對偏差。然後我們根據這些偏差的變異數計算 F 統計量。假設計算出的 F 統計量大於 F 分佈表中的臨界值。在這種情況下,我們拒絕原假設並得出結論:各組的變異數不相等。

如何在Python中執行Brown-Forsythe檢驗

在 Python 中,scipy 和 statsmodels 函式庫提供了執行 Brown-Forsythe 測試的方法。

值得注意的是,Brown-Forsythe 檢定對異常值很敏感,但對非常態性比 Levene 檢定更穩健。如果數據不正常,一般建議使用Brown-Forsythe檢定。

Python 中的 Brown ñ Forsythe 測驗

文法

levene(sample1, sample2, …sampleN, center=’median’, proportiontocut=0.05)

參數

  • sample1、sample2、…sampleN - 樣本數據,可能有不同的長度。樣品必須只有一維才能被接受。

  • Center - 用於測試的資料函數。 “中位數”是預設值。

  • Proportiontocut - 當中心被「修剪」時,會指示從每一端刪除的資料點數量。

說明

levene()函數中,使用者必須傳遞不同長度的一維樣本資料以及參數中心作為「Median」。然後,函數傳回所提供樣本的統計資料和 p_value。

演算法

  • 從 scipy 導入 levene 函數。

  • 建立要執行 Brown-Forsythe 測驗的資料樣本。

  • 將範例資料傳遞給 levene 函數以執行測試。

  • 從函數傳回統計資料和 p_value。

您可以使用統計資料。 scipy 庫中的 Levene 方法用於執行 Brown-Forsythe 測試。

from scipy.stats import levene

group1 = [1, 2, 3, 4, 5]
group2 = [2, 3, 4, 5, 6]
group3 = [3, 4, 5, 6, 7]

statistic, pvalue = levene(group1, group2, group3)
print("statistic: ", statistic)
print("p-value: ", pvalue)

輸出

statistic:  0.0
p-value:  1.0

在這裡,您可以看到 p 值為 1,大於 0.05。這意味著我們可以接受原假設。因此,兩組的變異數相同。因此,替代假設被拒絕。

除了實施 Brown-Forsythe 問題之外,我們還需要澄清機器學習工程師通常會遇到的一個困惑。這就是 Brown-Forsythe 和 ANOVA 檢定相互關聯的方式。

Brown ñ Forsythe 檢定和 ANOVA 檢定有何相關性?

Brown-Forsythe 和 ANOVA(變異數分析)檢定是相關的,因為它們檢定組別平均數的差異。然而,它們測試不同的假設並具有不同的應用。

變異數分析是一種統計方法,用於檢定兩個或多個組別的平均值之間是否存在顯著差異。它假設各組的變異數相等且資料呈常態分佈。變異數分析用於確定兩個或多個組別的平均值是否相等,並比較各組的變異數。

Brown-Forsythe 檢定是 Levene 檢定的變體,後者使用與平均數的絕對偏差,而 Brown-Forsythe 檢定則使用與中位數的偏差。另一方面,Brown-Forsythe 檢定是方差齊性檢驗,這是變異數分析的必要假設。用於判斷兩個或多個組的變異數是否相等。

在實務中,通常在變異數分析之前執行 Brown-Forsythe 檢定來檢查是否滿足等方差假設。如果變異數不相等,則可能適合使用非參數檢定(例如 Kruskal-Wallis 檢定或 Welch 變異數分析檢定)來取代常規檢定。

Brown ñ Forsythe 測試案例

Brown-Forsythe 檢定用於生物學、醫學、心理學、社會科學和工程等各個領域,用於檢定不同組別中的等方差。一些常見的用例包括 -

  • 比較兩個或多個樣本的變異數 - Brown-Forsythe 檢定可以確定兩個或多個樣本的變異數是否相等。例如,在醫學研究中,該測試可用於比較不同患者組的血壓測量值的變異數。

  • 在執行變異數分析之前測試變異數同質性 - 由於 Brown-Forsythe 檢定是變異數同質性測試,因此可用於檢查是否滿足等方差假設在執行變異數分析之前。這確保了變異數分析的結果是有效的。

  • 非常態分佈資料中的等方差檢定 - Brown-Forsythe 檢定對於非常態性比 Levene 檢定更穩健。它可用於檢定非常態分佈資料中的等方差。

  • 比較重複測量設計中的變異數 - 使用重複測量設計進行實驗時,使用 Brown-Forsythe 檢定來檢查組間變異數的同質性非常有用。

  • 製造中的品質控制 - Brown-Forsythe 測試可用於檢查不同生產批次中的等方差,以確保產品品質一致。

結論

總之,Brown-Forsythe 檢定是一種有用的統計方法,用於檢測資料集中是否存在異方差性。它可以使用 scipy 庫在 Python 中輕鬆實現。測試結果可以為有關對數據執行適當統計分析的決策提供資訊。透過了解測試的假設並解釋結果,研究人員可以更好地了解數據的分佈並就其分析做出明智的決策。

以上是如何在Python中執行Brown-Forsythe檢驗的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除