Learn R Programming

Runuran (version 0.21.0)

urf: UNU.RAN F random variate generator

Description

UNU.RAN random variate generator for the F distribution with with df1 and df2 degrees of freedom. It also allows sampling from the truncated distribution. [Special Generator] -- Sampling Function: F.

Usage

urf(n, df1, df2, lb=0, ub=Inf)

Arguments

n
size of required sample.
df1, df2
(strictly positive) degrees of freedom. Non-integer values allowed.
lb
lower bound of (truncated) distribution.
ub
upper bound of (truncated) distribution.

Details

The F distribution with df1 = $n_1$ and df2 = $n_2$ degrees of freedom has density $$f(x) = \frac{\Gamma(n_1/2 + n_2/2)}{\Gamma(n_1/2)\Gamma(n_2/2)} \left(\frac{n_1}{n_2}\right)^{n_1/2} x^{n_1/2 -1} \left(1 + \frac{n_1 x}{n_2}\right)^{-(n_1 + n_2) / 2}$$ for $x > 0$.

The generation algorithm uses fast numerical inversion. The parameters lb and ub can be used to generate variates from the F distribution truncated to the interval (lb,ub).

References

W. H"ormann, J. Leydold, and G. Derflinger (2004): Automatic Nonuniform Random Variate Generation. Springer-Verlag, Berlin Heidelberg

See Also

runif and .Random.seed about random number generation, unuran for the UNU.RAN class, and rf for the Rbuilt-in generator.

Examples

Run this code
## Create a sample of size 1000
x <- urf(n=1000,df1=3,df2=5)

Run the code above in your browser using DataLab