urf function

UNU.RAN F random variate generator

UNU.RAN F random variate generator

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.

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 = n1n1 and df2 =

n2n2 degrees of freedom has density

f(x)=Γ(n1/2+n2/2)Γ(n1/2)Γ(n2/2)(n1n2)n1/2xn1/21(1+n1xn2)(n1+n2)/2 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}%f(x) = Gamma((n1 + n2)/2) / (Gamma(n1/2) Gamma(n2/2)) * (n1/n2)^(n1/2) x^(n1/2 - 1) * (1 + (n1/n2) x)^-(n1 + n2)/2

for x>0x > 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).

See Also

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

References

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

Author(s)

Josef Leydold and Wolfgang H"ormann unuran@statmath.wu.ac.at .

Note

This function is wrapper for the UNU.RAN class in . Compared to rf, urf is faster, especially for larger sample sizes. However, in opposition to rf vector arguments are ignored, i.e. only the first entry is used.

Examples

## Create a sample of size 1000 x <- urf(n=1000,df1=3,df2=5)
  • Maintainer: Josef Leydold
  • License: GPL (>= 2)
  • Last published: 2025-04-07