numpy.random.Generator.noncentral_f#

方法

random.Generator.noncentral_f(dfnum, dfden, nonc, size=None)#

從非中心 F 分佈中抽取樣本。

樣本是從具有指定參數 dfnum (分子自由度) 和 dfden (分母自由度) 的 F 分佈中抽取的,其中兩個參數都 > 1。nonc 是非中心性參數。

參數:
dfnumfloat 或 float 的類陣列 (array_like)

分子自由度,必須 > 0。

dfdenfloat 或 float 的類陣列 (array_like)

分母自由度,必須 > 0。

noncfloat 或 float 的類陣列 (array_like)

非中心性參數,分子均方和,必須 >= 0。

sizeint 或 int 的 tuple,選用

輸出形狀。如果給定的形狀是,例如, (m, n, k),則會抽取 m * n * k 個樣本。如果 size 是 None (預設),則如果 dfnumdfdennonc 都是純量,則會傳回單一值。否則,會抽取 np.broadcast(dfnum, dfden, nonc).size 個樣本。

返回:
outndarray 或 純量

從參數化的非中心 Fisher 分佈中抽取的樣本。

註解

在計算實驗的檢定力時 (檢定力 = 當特定備擇假設為真時拒絕虛無假設的機率),非中心 F 統計量變得重要。當虛無假設為真時,F 統計量遵循中心 F 分佈。當虛無假設不為真時,則它遵循非中心 F 統計量。

參考文獻

[1]

Weisstein, Eric W. “非中心 F 分佈。” 來自 MathWorld–Wolfram Web Resource. https://mathworld.wolfram.com/NoncentralF-Distribution.html

[2]

Wikipedia, “非中心 F 分佈”, https://en.wikipedia.org/wiki/Noncentral_F-distribution

範例

在研究中,為了檢測虛無假設的特定備擇方案,需要使用非中心 F 分佈。我們需要計算分佈尾部中超出虛無假設的 F 分佈值的區域。我們將繪製兩個機率分佈以進行比較。

>>> rng = np.random.default_rng()
>>> dfnum = 3 # between group deg of freedom
>>> dfden = 20 # within groups degrees of freedom
>>> nonc = 3.0
>>> nc_vals = rng.noncentral_f(dfnum, dfden, nonc, 1000000)
>>> NF = np.histogram(nc_vals, bins=50, density=True)
>>> c_vals = rng.f(dfnum, dfden, 1000000)
>>> F = np.histogram(c_vals, bins=50, density=True)
>>> import matplotlib.pyplot as plt
>>> plt.plot(F[1][1:], F[0])
>>> plt.plot(NF[1][1:], NF[0])
>>> plt.show()
../../../_images/numpy-random-Generator-noncentral_f-1.png