urf {Runuran} | R Documentation |
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
).
Note
This function is wrapper for the UNU.RAN class in R.
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.
Author(s)
Josef Leydold and Wolfgang H\"ormann unuran@statmath.wu.ac.at.
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 R built-in generator.
Examples
## Create a sample of size 1000
x <- urf(n=1000,df1=3,df2=5)