SciPy

scipy.special.ncfdtridfd

scipy.special.ncfdtridfd(dfn, p, nc, f) = <ufunc 'ncfdtridfd'>

Calculate degrees of freedom (denominator) for the noncentral F-distribution.

This is the inverse with respect to dfd of ncfdtr. See ncfdtr for more details.

Parameters:
dfn : array_like

Degrees of freedom of the numerator sum of squares. Range (0, inf).

p : array_like

Value of the cumulative distribution function. Must be in the range [0, 1].

nc : array_like

Noncentrality parameter. Should be in range (0, 1e4).

f : array_like

Quantiles, i.e. the upper limit of integration.

Returns:
dfd : float

Degrees of freedom of the denominator sum of squares.

See also

ncfdtr
CDF of the non-central F distribution.
ncfdtri
Quantile function; inverse of ncfdtr with respect to f.
ncfdtridfn
Inverse of ncfdtr with respect to dfn.
ncfdtrinc
Inverse of ncfdtr with respect to nc.

Notes

The value of the cumulative noncentral F distribution is not necessarily monotone in either degrees of freedom. There thus may be two values that provide a given CDF value. This routine assumes monotonicity and will find an arbitrary one of the two values.

Examples

>>> from scipy.special import ncfdtr, ncfdtridfd

Compute the CDF for several values of dfd:

>>> dfd = [1, 2, 3]
>>> p = ncfdtr(2, dfd, 0.25, 15)
>>> p
array([ 0.8097138 ,  0.93020416,  0.96787852])

Compute the inverse. We recover the values of dfd, as expected:

>>> ncfdtridfd(2, p, 0.25, 15)
array([ 1.,  2.,  3.])