# ddnf: The doubly non-central F distribution. In sadists: Some Additional Distributions

 dnf R Documentation

## The doubly non-central F distribution.

### Description

Density, distribution function, quantile function and random generation for the doubly non-central F distribution.

### Usage

ddnf(x, df1, df2, ncp1, ncp2, log = FALSE, order.max=6)

pdnf(q, df1, df2, ncp1, ncp2, lower.tail = TRUE, log.p = FALSE, order.max=6)

qdnf(p, df1, df2, ncp1, ncp2, lower.tail = TRUE, log.p = FALSE, order.max=6)

rdnf(n, df1, df2, ncp1, ncp2)


### Arguments

 x, q vector of quantiles. df1, df2 the degrees of freedom for the numerator and denominator. We do not recycle these versus the x,q,p,n. ncp1, ncp2 the non-centrality parameters for the numerator and denominator. We do not recycle these versus the x,q,p,n. log logical; if TRUE, densities f are given as \mbox{log}(f). order.max the order to use in the approximate density, distribution, and quantile computations, via the Gram-Charlier, Edeworth, or Cornish-Fisher expansion. p vector of probabilities. n number of observations. log.p logical; if TRUE, probabilities p are given as \mbox{log}(p). lower.tail logical; if TRUE (default), probabilities are P[X \le x], otherwise, P[X > x].

### Details

Suppose x_i \sim \chi^2\left(\delta_i,\nu_i\right) be independent non-central chi-squares for i=1,2. Then

Y = \frac{x_1/\nu_1}{x_2/\nu_2}

takes a doubly non-central F distribution with degrees of freedom \nu_1, \nu_2 and non-centrality parameters \delta_1,\delta_2.

### Value

ddnf gives the density, pdnf gives the distribution function, qdnf gives the quantile function, and rdnf generates random deviates.

Invalid arguments will result in return value NaN with a warning.

### Note

The PDF, CDF, and quantile function are approximated, via the Edgeworth or Cornish Fisher approximations, which may not be terribly accurate in the tails of the distribution. You are warned.

The distribution parameters are not recycled with respect to the x, p, q or n parameters, for, respectively, the density, distribution, quantile and generation functions. This is for simplicity of implementation and performance. It is, however, in contrast to the usual R idiom for dpqr functions.

### Author(s)

Steven E. Pav shabbychef@gmail.com

(singly non-central) F distribution functions, df, pf, qf, rf.

### Examples

rv <- rdnf(500, df1=100,df2=500,ncp1=1.5,ncp2=12)
d1 <- ddnf(rv, df1=100,df2=500,ncp1=1.5,ncp2=12)

plot(rv,d1)

p1 <- ddnf(rv, df1=100,df2=500,ncp1=1.5,ncp2=12)
# should be nearly uniform:

plot(ecdf(p1))

q1 <- qdnf(ppoints(length(rv)), df1=100,df2=500,ncp1=1.5,ncp2=12)

qqplot(x=rv,y=q1)



sadists documentation built on Aug. 22, 2023, 1:06 a.m.