Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

finv

F 逆累积分布函数

    说明

    示例

    x = finv(p,nu1,nu2) 返回在 p 中的概率值处计算的自由度为 nu1(分子)和 nu2(分母)的 F 分布的逆累积分布函数 (icdf) 值。

    示例

    全部折叠

    计算在 p 中的概率值处计算的自由度为 nu1nu2F 分布的逆 cdf 值。

    p = linspace(0.005,0.995,100);
    nu1 = 8;
    nu2 = 9;
    x = finv(p,nu1,nu2);

    绘制逆 cdf。

    plot(p,x)
    grid on
    xlabel("p")
    ylabel("x = F^{-1}(p| nu1 = " + num2str(nu1)...
        + ", nu2 = " + num2str(nu2) + ")")

    Figure contains an axes object. The axes object with xlabel p, ylabel x = blank F toThePowerOf -1 baseline (p| blank nu1 blank = blank 8, blank nu2 blank = blank 9) contains an object of type line.

    以从正态分布中抽取的大小为 n1 和 n2 的两个独立随机样本为例。样本的方差比率具有自由度为 n1-1 和 n2-1 的 F 分布。使用 F 分布的逆 cdf 来计算范围 [0 r95],以便方差比率有 95% 的概率在此范围内。

    rng default % For reproducibility
    n1 = 100;
    n2 = 105;
    p = 0.95;
    r = finv([0 p],n1-1,n2-1)
    r = 1×2
    
             0    1.3874
    
    

    从标准正态分布中生成两个随机样本,并计算其方差比率。

    s1 = randn([n1 1]);
    s2 = randn([n2 1]);
    r12 = var(s1)/var(s2)
    r12 = 1.3749
    

    方差比率 r12 在范围 [0 r95] 内。

    以从具有未知方差 var1var2 的正态总体中抽取的大小为 n1n2 的两个独立随机样本为例。样本具有方差 v1v2。使用 F 分布的逆 cdf 计算比率 var1/var2 的 95% 置信区间。

    输入样本大小和方差,并计算样本方差的比率。

    n1 = 122;
    n2 = 124;
    v1 = 1.3;
    v2 = 1.2;
    r = v1/v2
    r = 1.0833
    

    样本方差比率是 r

    计算总体方差比率 var1/var2 的 95% 置信区间。

    pCI = 95;
    p = (1+pCI/100)/2;
    rLow = v1/v2/finv(p,n1-1,n2-1)
    rLow = 0.7586
    
    rHigh = v1/v2*finv(p,n2-1,n1-1)
    rHigh = 1.5479
    

    总体方差比率 var1/var2 在范围 [rLow rHigh] 内的概率为 0.95。

    输入参数

    全部折叠

    用于计算 cdf 的逆函数 (icdf) 的概率值,指定为标量值或标量值组成的数组,其中每个元素都在范围 [0,1] 内。

    • 要在多个值处计算 icdf,请使用数组指定 p

    • 要计算多个分布的 icdf,请使用数组指定 nu1nu2

    如果输入参数 pnu1nu2 中的一个或多个是数组,则数组大小必须相同。在这种情况下,finv 将每个标量输入扩展为与数组输入大小相同的常量数组。

    示例: [0.1,0.5,0.9]

    数据类型: single | double

    F 分布函数的分子中的自由度数量,指定为正标量值或正标量值组成的数组。

    • 要在多个值处计算 icdf,请使用数组指定 p

    • 要计算多个分布的 icdf,请使用数组指定 nu1nu2

    如果输入参数 pnu1nu2 中的一个或多个是数组,则数组大小必须相同。在这种情况下,finv 将每个标量输入扩展为与数组输入大小相同的常量数组。

    示例: [ 8 7 9]

    数据类型: single | double

    F 分布函数的分母中的自由度数量,指定为正标量值或正标量值组成的数组。

    • 要在多个值处计算 icdf,请使用数组指定 p

    • 要计算多个分布的 icdf,请使用数组指定 nu1nu2

    如果输入参数 pnu1nu2 中的一个或多个是数组,则数组大小必须相同。在这种情况下,finv 将每个标量输入扩展为与数组输入大小相同的常量数组。

    示例: [ 7 6 10]

    数据类型: single | double

    输出参数

    全部折叠

    p 中的概率处计算的逆 cdf 值,以标量值或标量值数组的形式返回。在经过任何必要的标量扩展后,x 的大小与 pnu1nu2 相同。x 中的每个元素是由 nu1nu2 中对应元素指定的分布的逆 cdf 值,其值在 p 中对应概率处进行计算。

    详细信息

    全部折叠

    F 分布

    根据 F 累积分布函数 (cdf),F 逆函数定义为

    x=F1(p|ν1,ν2)={x:F(x|ν1,ν2)=p}

    其中

    p=F(x|ν1,ν2)=0xΓ[(ν1+ν2)2]Γ(ν12)Γ(ν22)(ν1ν2)ν12tν122[1+(ν1ν2)t]ν1+ν22dt

    ν 值是自由度,Γ( · ) 是 gamma 函数。结果 x 是需提供概率 p 的积分方程的解。

    有关详细信息,请参阅F Distribution

    替代功能

    • finv 是 F 分布特有的函数。Statistics and Machine Learning Toolbox™ 还提供泛型函数 icdf,它支持各种概率分布。要使用 icdf,请指定概率分布名称及其参数。请注意,分布特有的函数 finv 比泛型函数 icdf 的执行速度要快。

    参考

    [1] Abramowitz, M., and I. A. Stegun. Handbook of Mathematical Functions. New York: Dover, 1964.

    [2] Freund, John E. Mathematical Statistics Fifth Edition. Englewood Cliffs, NJ: Prentice Hall College Division, 1992.

    扩展功能

    C/C++ 代码生成
    使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

    GPU 数组
    通过使用 Parallel Computing Toolbox™ 在图形处理单元 (GPU) 上运行来加快代码执行。

    版本历史记录

    在 R2006a 之前推出

    另请参阅

    | | | | |