Approximations based on the central \(t\), \(F\) or beta distribution#
Dunn-Šidák percentage points#
- ctx.dunn_sidak_qtf(q, nu, C)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns the percentage points of Dunn-Šidák.
See also: Kirk, Games.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.dunn_sidak_qtf(x, nu, nc); mx = mpm.dunn_sidak_qtf(x, nu, nc) >>> ix = ipm.dunn_sidak_qtf(x, nu, nc); fx = fpm.dunn_sidak_qtf(x, nu, nc) >>> gx = gmp.dunn_sidak_qtf(x, nu, nc); ax = apm.dunn_sidak_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Singly non-central Fisher F distribution: cdf, sf (Patnaik)#
- ctx.fisher_f_nc_mu2_cdf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the cdf of the noncentral Fisher F distribution.
[Patnaik1949` suggests the following approximation, see also Tiku [854]:
\[F_{F'}(x;n_1,n_2,\lambda) \thickapprox F_F\left(y; m_1, n_2\right), \quad \text{where}\]\(A_1=(n_1+\lambda)\),
\(B_1=(n_1+2\lambda)\),
\(m_1= A_1^2/B_1\),
\(y=n_1/A_1\),
and \(F_F\left(\cdot; m_1, n_2\right)\) denotes the CDF of a central \(F\) distribution with \(m_1\) and \(n_2\) degrees of freedom.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_f_nc_mu2_cdf(x, nu, nc); mx = mpm.fisher_f_nc_mu2_cdf(x, nu, nc) >>> ix = ipm.fisher_f_nc_mu2_cdf(x, nu, nc); fx = fpm.fisher_f_nc_mu2_cdf(x, nu, nc) >>> gx = gmp.fisher_f_nc_mu2_cdf(x, nu, nc); ax = apm.fisher_f_nc_mu2_cdf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Singly non-central F distribution: qtf, isf (Patnaik)#
- ctx.fisher_f_nc_mu2_qtf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to \(F_{\alpha,n_1,n_2,\lambda}\), the \(\alpha\)-quantile of a non-central F-distribution with \(n_1\) and \(n_2\) degress of freedom and noncentrality parameter \(\lambda\).
\[F_{\alpha,n_1,n_2,\lambda} \thickapprox c \cdot F_{\alpha,m_1,n_2,}\]\(A_1=(n_1+\lambda)\),
\(B_1=(n_1+2\lambda)\),
\(m_1= A_1^2/B_1\),
\(c=A_1/n_1\),
and \(F_{\alpha,m_1,n_2,}\) denotes the \(\alpha\)-quantile of a central \(F\)-distribution with \(m_1\) and \(n_2\) degress of freedom.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_f_nc_mu2_qtf(x, nu, nc); mx = mpm.fisher_f_nc_mu2_qtf(x, nu, nc) >>> ix = ipm.fisher_f_nc_mu2_qtf(x, nu, nc); fx = fpm.fisher_f_nc_mu2_qtf(x, nu, nc) >>> gx = gmp.fisher_f_nc_mu2_qtf(x, nu, nc); ax = apm.fisher_f_nc_mu2_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Singly non-central F: confidence interval for the noncentrality parameter \(\lambda\)#
- ctx.fisher_f_nc_mu2_cl(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the confidence interval (CI) for the noncentrality parameter \(\lambda\) of a singly non-central F-distribution.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_f_nc_mu2_cl(x, nu, nc); mx = mpm.fisher_f_nc_mu2_cl(x, nu, nc) >>> ix = ipm.fisher_f_nc_mu2_cl(x, nu, nc); fx = fpm.fisher_f_nc_mu2_cl(x, nu, nc) >>> gx = gmp.fisher_f_nc_mu2_cl(x, nu, nc); ax = apm.fisher_f_nc_mu2_cl(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Doubly non-central F distribution: cdf, sf (Patnaik)#
- ctx.fisher_f_nc2_mu2_cdf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the cdf of the doubly noncentral Fisher F distribution.
Mudholkar (1976) suggests an approximation by noncentral \(F\), which can be converted into an approximation by central \(F\) as follows:
\[F_{F''}(x;n_1,n_2,\lambda_1,\lambda_2) \thickapprox F_F\left(y; m_1, m_2\right), \quad \text{where}\]\(A_1=(n_1+\lambda_1), A_2=(n_2+\lambda_2)\),
\(B_1=(n_1+2\lambda_1), B_2=(n_2+2\lambda_2)\),
\(m_1= A_1^2/B_1, m_2= A_2^2/B_2\),
\(y= x (n_1 A_2)/(n_2 A_1)\),
and \(F_F\left(\cdot; m_1, m_2\right)\) denotes the CDF of a central \(F\) distribution with \(m_1\) and \(m_2\) degrees of freedom.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_f_nc2_mu2_cdf(x, nu, nc); mx = mpm.fisher_f_nc2_mu2_cdf(x, nu, nc) >>> ix = ipm.fisher_f_nc2_mu2_cdf(x, nu, nc); fx = fpm.fisher_f_nc2_mu2_cdf(x, nu, nc) >>> gx = gmp.fisher_f_nc2_mu2_cdf(x, nu, nc); ax = apm.fisher_f_nc2_mu2_cdf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Doubly non-central F distribution: qtf, isf (Patnaik)#
- ctx.fisher_f_nc2_mu2_qtf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to \(F_{\alpha,n_1,n_2,\lambda_1,\lambda_2}\), the \(\alpha\)-quantile of a doubly non-central F-distribution with \(n_1\) and \(n_2\) degress of freedom and noncentrality parameters \(\lambda_1\) and \(\lambda_2\), is obtained as
\[F_{\alpha,n_1,n_2,\lambda_1,\lambda_2} \thickapprox c \cdot F_{\alpha,m_1,m_2,}\]\(A_1=(n_1+\lambda_1), A_2=(n_1+\lambda_2)\),
\(B_1=(n_1+2\lambda_1), B_2=(n_1+2\lambda_2)\),
\(m_1= A_1^2/B_1, m_2= A_2^2/B_2\),
\(c=(n_2 A_1)/(n_1 A_2)\),
and denotes the \(\alpha\)-quantile of a central \(F\)-distribution with \(m_1\) and \(m_2\) degress of freedom.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_f_nc2_mu2_qtf(x, nu, nc); mx = mpm.fisher_f_nc2_mu2_qtf(x, nu, nc) >>> ix = ipm.fisher_f_nc2_mu2_qtf(x, nu, nc); fx = fpm.fisher_f_nc2_mu2_qtf(x, nu, nc) >>> gx = gmp.fisher_f_nc2_mu2_qtf(x, nu, nc); ax = apm.fisher_f_nc2_mu2_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Multiple correlation coefficient: cdf, sf (Lee and Gurland)#
- ctx.fisher_r2_lee_cdf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the cdf of the Fisher \(R^2\) distribution.
See also Lee [429], Gurland [373], Gurland and Milton [375].
\[F_{F'}(x;n_1,n_2,\rho^2) \thickapprox F_F\left(x/c; m_1, n_2\right),\]where \(c=A_1/n_1\), \(m_1= A_1^2/A_2\), \(A_1=(n_1+n_2) (\gamma-1)+n_1\), \(A_2=(n_1+n_2) (\gamma^2-1)+n_1\), \(\gamma=1/(1-\rho^2)\), and \(F_F\left(\cdot; m_1, n_2\right)\) denotes the CDF of a central \(F\) distribution with \(m_1\) and \(n_2\) degrees of freedom.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_r2_lee_cdf(x, nu, nc); mx = mpm.fisher_r2_lee_cdf(x, nu, nc) >>> ix = ipm.fisher_r2_lee_cdf(x, nu, nc); fx = fpm.fisher_r2_lee_cdf(x, nu, nc) >>> gx = gmp.fisher_r2_lee_cdf(x, nu, nc); ax = apm.fisher_r2_lee_cdf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Multiple correlation coefficient: qtf, isf (Lee and Gurland)#
- ctx.fisher_r2_lee_qtf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the qtf of the Fisher \(R^2\) distribution.
See also Lee [429], Gurland [373], Gurland and Milton [375].
\[F_{F'}(x;n_1,n_2,\rho^2) \thickapprox F_F\left(x/c; m_1, n_2\right),\]where \(c=A_1/n_1\), \(m_1= A_1^2/A_2\), \(A_1=(n_1+n_2) (\gamma-1)+n_1\), \(A_2=(n_1+n_2) (\gamma^2-1)+n_1\), \(\gamma=1/(1-\rho^2)\), and \(F_F\left(\cdot; m_1, n_2\right)\) denotes the CDF of a central \(F\) distribution with \(m_1\) and \(n_2\) degrees of freedom.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_r2_lee_qtf(x, nu, nc); mx = mpm.fisher_r2_lee_qtf(x, nu, nc) >>> ix = ipm.fisher_r2_lee_qtf(x, nu, nc); fx = fpm.fisher_r2_lee_qtf(x, nu, nc) >>> gx = gmp.fisher_r2_lee_qtf(x, nu, nc); ax = apm.fisher_r2_lee_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Fisher \(R^2\),: confidence limit for \(\rho^2\)#
- ctx.fisher_r2_lee_cl(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the confidence interval (CI) for the noncentrality parameter \(\rho^2\) of Fisher \(R^2\) distribution.
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.fisher_r2_lee_cl(x, nu, nc); mx = mpm.fisher_r2_lee_cl(x, nu, nc) >>> ix = ipm.fisher_r2_lee_cl(x, nu, nc); fx = fpm.fisher_r2_lee_cl(x, nu, nc) >>> gx = gmp.fisher_r2_lee_cl(x, nu, nc); ax = apm.fisher_r2_lee_cl(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Central Wilks’ Lambda: cdf, sf (Rao)#
- ctx.wilks_lambda_rao_cdf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns Rao’s F approximation to the cdf of Wilk’s \(\Lambda\)
Define
\[z = \frac{1-\Lambda^{1/r}}{\Lambda^{1/r}} \frac{rt-2u}{pq}, \quad \text{where } r = v - \frac{p-q+1}{2}, u = \frac{pq-2}{4}, \quad \text{and }\]\[t=\sqrt{\frac{p^2 q^2 -4}{p^2 + q^2 -5}} \text{ if } p^2 + q^2 - 5 > 0 \text{ or } 1 \text{ otherwise.}\]Then \(z\) is approximately distributed as \(F(z; pq, rt-2u)\).
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.wilks_lambda_rao_cdf(x, nu, nc); mx = mpm.wilks_lambda_rao_cdf(x, nu, nc) >>> ix = ipm.wilks_lambda_rao_cdf(x, nu, nc); fx = fpm.wilks_lambda_rao_cdf(x, nu, nc) >>> gx = gmp.wilks_lambda_rao_cdf(x, nu, nc); ax = apm.wilks_lambda_rao_cdf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Central Wilks’ Lambda: qtf, isf (Rao)#
- ctx.wilks_lambda_rao_qtf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns Rao’s F approximation to the cdf of Wilk’s \(\Lambda\)
Define
\[z = \frac{1-\Lambda^{1/r}}{\Lambda^{1/r}} \frac{rt-2u}{pq}, \quad \text{where } r = v - \frac{p-q+1}{2}, u = \frac{pq-2}{4}, \quad \text{and }\]\[t=\sqrt{\frac{p^2 q^2 -4}{p^2 + q^2 -5}} \text{ if } p^2 + q^2 - 5 > 0 \text{ or } 1 \text{ otherwise.}\]Then \(z\) is approximately distributed as \(F(z; pq, rt-2u)\).
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.wilks_lambda_rao_qtf(x, nu, nc); mx = mpm.wilks_lambda_rao_qtf(x, nu, nc) >>> ix = ipm.wilks_lambda_rao_qtf(x, nu, nc); fx = fpm.wilks_lambda_rao_qtf(x, nu, nc) >>> gx = gmp.wilks_lambda_rao_qtf(x, nu, nc); ax = apm.wilks_lambda_rao_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Central Hotelling’s \(T^2\): cdf, sf (Pillai and Young)#
- ctx.hotelling_t2_mu3_cdf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the cdf of the central Hotelling’s \(T^2\) distribution. See also Pillai and Young [496].
Let \(m=(n_1-p-1)/2\), \(n=(n_2-p-1)/2\), and \(r = 2m + p +1\). Define
\[\mu_1 = \frac{pr}{2n}, \quad \mu_2 = \mu_1 \frac{(2n+r)(2n+p)}{2n(n-1)(2n+1)}, \quad \mu_3 = \mu_2 \frac{2(n+r)(n+p)}{n(n-2)(n+1)},\]\[a= \frac{(2\mu_13\mu_2+3\mu_1^2\mu_3-6\mu_1\mu_2^2-\mu_2\mu_3)}{(\mu_2\mu_3+4\mu_1\mu_2^2-\mu_1^2\mu_3)}+1, \quad b= \frac{a(a+2)-\mu_1^2/\mu_2}{a-\mu_1^2/\mu_2} - a,\]\[K= \frac{\mu_1(b-1)}{a}, \quad w=\frac{x}{x+K}.\]Then \(x=T^2/n_2\) is approximately distributed as \(I_w(a,b)\).
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.hotelling_t2_mu3_cdf(x, nu, nc); mx = mpm.hotelling_t2_mu3_cdf(x, nu, nc) >>> ix = ipm.hotelling_t2_mu3_cdf(x, nu, nc); fx = fpm.hotelling_t2_mu3_cdf(x, nu, nc) >>> gx = gmp.hotelling_t2_mu3_cdf(x, nu, nc); ax = apm.hotelling_t2_mu3_cdf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Central Hotelling’s \(T^2\): qtf, isf (Pillai and Young)#
- ctx.hotelling_t2_mu3_qtf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the qtf of the central Hotelling’s \(T^2\) distribution, based on matching the first 3 moments.. See also Pillai and Young [496].
Let \(m=(n_1-p-1)/2\), \(n=(n_2-p-1)/2\), and \(r = 2m + p +1\). Define
\[\mu_1 = \frac{pr}{2n}, \quad \mu_2 = \mu_1 \frac{(2n+r)(2n+p)}{2n(n-1)(2n+1)}, \quad \mu_3 = \mu_2 \frac{2(n+r)(n+p)}{n(n-2)(n+1)},\]\[a= \frac{(2\mu_13\mu_2+3\mu_1^2\mu_3-6\mu_1\mu_2^2-\mu_2\mu_3)}{(\mu_2\mu_3+4\mu_1\mu_2^2-\mu_1^2\mu_3)}+1, \quad b= \frac{a(a+2)-\mu_1^2/\mu_2}{a-\mu_1^2/\mu_2} - a,\]\[K= \frac{\mu_1(b-1)}{a}, \quad w=\frac{x}{x+K}.\]Then \(x=T^2/n_2\) is approximately distributed as \(I_w(a,b)\).
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.hotelling_t2_mu3_qtf(x, nu, nc); mx = mpm.hotelling_t2_mu3_qtf(x, nu, nc) >>> ix = ipm.hotelling_t2_mu3_qtf(x, nu, nc); fx = fpm.hotelling_t2_mu3_qtf(x, nu, nc) >>> gx = gmp.hotelling_t2_mu3_qtf(x, nu, nc); ax = apm.hotelling_t2_mu3_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Central Pillai’s \(V\): cdf, sf (Ginzberg)#
- ctx.pillay_v_mu3_cdf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the cdf of the central Pillai \(V\) distribution, based on matching the first 3 moments. See also Ginzberg [364].
Let \(m=(n_1-p-1)/2\), \(n=(n_2-p-1)/2\), and \(r = m + n + p\). Define
\[\mu_1 = \frac{p (2 m + p + 1)}{2 (r + 1)}, \quad \mu_2 = \mu_1 \frac{(2 n + p + 1) (2 r - p + 2)}{2 (r + 1) (r + 2) (2 r + 1)}, \quad \mu_3 = \mu_2 \frac{4 (n - m) (m + n + 1)}{(r + 1) (r + 3) (2 r)},\]\[c = 4 \mu_1 \mu_2^2 - \mu_1^2 \mu_3 + \mu_2 \mu_3, \quad d= 2 \mu_2^2 -\mu_1 \mu_3,\]\[a= \frac{2 \mu_1 ( \mu_1^2 \mu_2 - \mu_2^2 + \mu_1 \mu_3)}{c}, \quad b=\frac{a}{d} \: \frac{ \mu_2 (2 \mu_1 \mu_2 + \mu_3) }{ \mu_1 }, \quad w= \frac{d}{c} x.\]Then \(x=V/n_2\) is approximately distributed as \(I_w(a,b)\).
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.pillay_v_mu3_cdf(x, nu, nc); mx = mpm.pillay_v_mu3_cdf(x, nu, nc) >>> ix = ipm.pillay_v_mu3_cdf(x, nu, nc); fx = fpm.pillay_v_mu3_cdf(x, nu, nc) >>> gx = gmp.pillay_v_mu3_cdf(x, nu, nc); ax = apm.pillay_v_mu3_cdf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Central Pillai’s \(V\): qtf, isf (Ginzberg)#
- ctx.pillay_v_mu3_qtf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the cdf of the central Pillai \(V\) distribution. See also Ginzberg [364].
Let \(m=(n_1-p-1)/2\), \(n=(n_2-p-1)/2\), and \(r = m + n + p\). Define
\[\mu_1 = \frac{p (2 m + p + 1)}{2 (r + 1)}, \quad \mu_2 = \mu_1 \frac{(2 n + p + 1) (2 r - p + 2)}{2 (r + 1) (r + 2) (2 r + 1)}, \quad \mu_3 = \mu_2 \frac{4 (n - m) (m + n + 1)}{(r + 1) (r + 3) (2 r)},\]\[c = 4 \mu_1 \mu_2^2 - \mu_1^2 \mu_3 + \mu_2 \mu_3, \quad d= 2 \mu_2^2 -\mu_1 \mu_3,\]\[a= \frac{2 \mu_1 ( \mu_1^2 \mu_2 - \mu_2^2 + \mu_1 \mu_3)}{c}, \quad b=\frac{a}{d} \: \frac{ \mu_2 (2 \mu_1 \mu_2 + \mu_3) }{ \mu_1 }, \quad w= \frac{d}{c} x.\]Then \(x=V/n_2\) is approximately distributed as \(I_w(a,b)\).
An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.pillay_v_mu3_qtf(x, nu, nc); mx = mpm.pillay_v_mu3_qtf(x, nu, nc) >>> ix = ipm.pillay_v_mu3_qtf(x, nu, nc); fx = fpm.pillay_v_mu3_qtf(x, nu, nc) >>> gx = gmp.pillay_v_mu3_qtf(x, nu, nc); ax = apm.pillay_v_mu3_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Product of independent beta variables: cdf, sf (Nagarsenker)#
- ctx.beta_product_mu3_cdf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the cdf of the product of independent beta variables distribution.
Nagarsenker and Suniaga [444] proposes the following approximation:
\[\text{Pr}(W_p \leq \lambda) = I(x; sm + d, \nu_1 + r) + O(sm^{-3}), \quad \text{where}\]\[x=\lambda^{1/s}; \quad a=\frac{\nu_1 - \nu_2}{2\nu_1}; \quad d=\frac{1-\nu_1}{2}; \quad \nu_r=\sum_{i=1}^p{c_i^r - b_i^r}\]\[s^2 = \frac{-2B_2((1+\nu_1)/2)}{\sum_{i=1}^p{B_3(a+b_i) - B_3(a+c_i) }}\]An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.beta_product_mu3_cdf(x, nu, nc); mx = mpm.beta_product_mu3_cdf(x, nu, nc) >>> ix = ipm.beta_product_mu3_cdf(x, nu, nc); fx = fpm.beta_product_mu3_cdf(x, nu, nc) >>> gx = gmp.beta_product_mu3_cdf(x, nu, nc); ax = apm.beta_product_mu3_cdf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)
Product of independent beta variables: qtf, isf (Nagarsenker)#
- ctx.beta_product_mu3_qtf(x)#
where
ctxisfpm,mpm,ipm,dec,gmporapm.Returns an approximation to the qtf of the product of independent beta variables distribution.
Nagarsenker and Suniaga [444] proposes the following approximation:
\[\text{Pr}(W_p \leq \lambda) = I(x; sm + d, \nu_1 + r) + O(sm^{-3}), \quad \text{where}\]\[x=\lambda^{1/s}; \quad a=\frac{\nu_1 - \nu_2}{2\nu_1}; \quad d=\frac{1-\nu_1}{2}; \quad \nu_r=\sum_{i=1}^p{c_i^r - b_i^r}\]\[s^2 = \frac{-2B_2((1+\nu_1)/2)}{\sum_{i=1}^p{B_3(a+b_i) - B_3(a+c_i) }}\]An example (CDF):
>>> from mpfunlab import fpm, mpm >>> mpm.dps = 40; x = 12; nu = 10; nc = 30 >>> dx = dec.beta_product_mu3_qtf(x, nu, nc); mx = mpm.beta_product_mu3_qtf(x, nu, nc) >>> ix = ipm.beta_product_mu3_qtf(x, nu, nc); fx = fpm.beta_product_mu3_qtf(x, nu, nc) >>> gx = gmp.beta_product_mu3_qtf(x, nu, nc); ax = apm.beta_product_mu3_qtf(x, nu, nc) >>> mpm.show([dx, mx, ix, fx, gx, ax]) dec: 3.113877423416836055714616090074444149943E-1 mpm: 3.113877423416836055714616090074444149943e-1 ipm: 3.113877423416836055714616090074444149944e-1 (4.147e-38%) fpm: 3.11387742341684E-01 gmp: 3.113877423416836055714616090074444149943E-01 ipm: 3.113877423416836055714616090074444149943e-1 (4.055e-38%)