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
,而不是 2Dnp.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
檢定列表 a、b 和 c 是否來自具有相等變異數的母體。
>>> 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 的樣本變異數遠大於 a 和 c 的樣本變異數
>>> [np.var(x, ddof=1) for x in [a, b, c]] [0.007054444444444413, 0.13073888888888888, 0.008890000000000002]
如需更詳細的範例,請參閱 Fligner-Killeen 變異數相等性檢定。