scipy.stats.

fligner#

scipy.stats.fligner(*samples, center='median', proportiontocut=0.05, axis=0, nan_policy='propagate', keepdims=False)[原始碼]#

執行 Fligner-Killeen 檢定以檢驗變異數是否相等。

Fligner 檢定檢驗所有輸入樣本是否來自具有相等變異數的母體的虛無假設。當母體相同時,Fligner-Killeen 檢定是無分配的 [2]

參數:
sample1, sample2, …array_like

樣本資料的陣列。長度不必相同。

center{‘mean’, ‘median’, ‘trimmed’}, optional

關鍵字引數,用於控制計算檢定統計量時使用的資料函數。預設值為 ‘median’。

proportiontocutfloat, optional

center 為 ‘trimmed’ 時,此值給定從每一端削減的資料點比例。(請參閱 scipy.stats.trim_mean。)預設值為 0.05。

axisint 或 None,預設值:0

若為整數,則為計算統計量時沿著輸入的軸。輸入的每個軸切片(例如,列)的統計量將會出現在輸出的對應元素中。若為 None,則輸入將會在計算統計量之前被展平。

nan_policy{‘propagate’, ‘omit’, ‘raise’}

定義如何處理輸入的 NaN。

  • propagate:若 NaN 存在於計算統計量時沿著的軸切片(例如,列)中,則輸出的對應條目將會是 NaN。

  • omit:在執行計算時將會省略 NaN。若在計算統計量時沿著的軸切片中剩餘的資料不足,則輸出的對應條目將會是 NaN。

  • raise:若 NaN 存在,則將會引發 ValueError

keepdimsbool,預設值:False

若設定為 True,則縮減的軸會保留在結果中,作為大小為一的維度。使用此選項,結果將會正確地廣播以對抗輸入陣列。

返回:
statisticfloat

檢定統計量。

pvaluefloat

假設檢定的 p 值。

另請參閱

bartlett

常態樣本中 k 個變異數相等性的參數檢定

levene

k 個變異數相等性的穩健參數檢定

Fligner-Killeen 變異數相等性檢定

延伸範例

註解

與 Levene 檢定一樣,Fligner 檢定有三種變體,它們因檢定中使用的中央趨勢量度而異。請參閱 levene 以取得更多資訊。

Conover 等人 (1981) 透過廣泛的模擬檢驗了許多現有的參數和非參數檢定,他們的結論是 Fligner 和 Killeen (1976) 以及 Levene (1960) 提出的檢定在偏離常態性和檢力方面似乎更優越 [3]

從 SciPy 1.9 開始,np.matrix 輸入(不建議用於新程式碼)在執行計算之前會轉換為 np.ndarray。在這種情況下,輸出將會是純量或適當形狀的 np.ndarray,而不是 2D np.matrix。同樣地,雖然遮罩陣列的遮罩元素會被忽略,但輸出將會是純量或 np.ndarray,而不是具有 mask=False 的遮罩陣列。

參考文獻

[1]

Park, C. and Lindsay, B. G. (1999). Robust Scale Estimation and Hypothesis Testing based on Quadratic Inference Function. Technical Report #99-03, Center for Likelihood Studies, Pennsylvania State University. https://cecas.clemson.edu/~cspark/cv/paper/qif/draftqif2.pdf

[2]

Fligner, M.A. and Killeen, T.J. (1976). Distribution-free two-sample tests for scale. Journal of the American Statistical Association. 71(353), 210-213.

[3]

Park, C. and Lindsay, B. G. (1999). Robust Scale Estimation and Hypothesis Testing based on Quadratic Inference Function. Technical Report #99-03, Center for Likelihood Studies, Pennsylvania State University.

[4]

Conover, W. J., Johnson, M. E. and Johnson M. M. (1981). A comparative study of tests for homogeneity of variances, with applications to the outer continental shelf bidding data. Technometrics, 23(4), 351-361.

範例

>>> import numpy as np
>>> from scipy import stats

檢定列表 abc 是否來自具有相等變異數的母體。

>>> a = [8.88, 9.12, 9.04, 8.98, 9.00, 9.08, 9.01, 8.85, 9.06, 8.99]
>>> b = [8.88, 8.95, 9.29, 9.44, 9.15, 9.58, 8.36, 9.18, 8.67, 9.05]
>>> c = [8.95, 9.12, 8.95, 8.85, 9.03, 8.84, 9.07, 8.98, 8.86, 8.98]
>>> stat, p = stats.fligner(a, b, c)
>>> p
0.00450826080004775

小的 p 值表示母體不具有相等的變異數。

這並不令人意外,因為 b 的樣本變異數遠大於 ac 的樣本變異數

>>> [np.var(x, ddof=1) for x in [a, b, c]]
[0.007054444444444413, 0.13073888888888888, 0.008890000000000002]

如需更詳細的範例,請參閱 Fligner-Killeen 變異數相等性檢定