上一个主题

numpy.random.noncentral_chisquare

下一个主题

numpy.random.normal

numpy.random.noncentral_f

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

从非中心F分布中提取样本。

从具有指定参数的F分布中提取样本, dfnum (分子自由度)和 dfden (分母中的自由度),其中两个参数均大于1。 nonc 是非中心性参数。

参数:
DFNUM : 浮点数或类似浮点数的数组

分子自由度,应大于0。

在 1.14.0 版更改: 早期的numpy版本需要dfnum>1。

德夫登 : 浮点数或类似浮点数的数组

分母自由度,应大于0。

nonc : 浮点数或类似浮点数的数组

非中心性参数,分子的平方和意味着,应该大于等于0。

size : int或int的元组,可选

输出形状。如果给定的形状是,例如, (m, n, k) 然后 m * n * k 取样。如果尺寸是 None (默认),如果 dfnumdfdennonc 都是鳞片。否则, np.broadcast(dfnum, dfden, nonc).size 取样。

返回:
out : ndarray或scalar

从参数化非中心Fisher分布中提取样本。

笔记

当计算一个实验的功率(功率=当一个特定的选择是真的时拒绝零假设的概率)时,非中心F统计量变得重要。当零假设成立时,F统计量服从中心F分布。当无效假设不成立时,则遵循非中心F统计量。

工具书类

[1]非中心F-分布〉,摘自《数学世界——沃尔夫拉姆网络资源》。http://mathworld.wolfram.com/noncentralf-distribution.html
[2]维基百科,“非中心F-分布”,https://en.wikipedia.org/wiki/noncentral_f-distribution

实例

在一项研究中,对空假设的特定替代方案的测试需要使用非中心F分布。对于零假设,我们需要计算分布尾部超过f分布值的面积。我们将绘制两个概率分布图进行比较。

>>> dfnum = 3 # between group deg of freedom
>>> dfden = 20 # within groups degrees of freedom
>>> nonc = 3.0
>>> nc_vals = np.random.noncentral_f(dfnum, dfden, nonc, 1000000)
>>> NF = np.histogram(nc_vals, bins=50, density=True)
>>> c_vals = np.random.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-noncentral_f-1.png