7.8 F distribution
R script for F distribution
Df
## function (f, nu1, nu2)
## {
## if (nu1 <= 0 | nu2 <= 0) {
## warning("bad nu1, nu2 for an F distribution")
## return(NULL)
## }
## if (f <= 0) {
## warning("bad f for an F distribution")
## return(NULL)
## }
## return(exp((0.5 * nu1 - 1) * log(f) - 0.5 * (nu1 + nu2) *
## log(nu2 + nu1 * f) + 0.5 * (nu1 * log(nu1) + nu2 * log(nu2)) +
## gammln(0.5 * (nu1 + nu2)) - gammln(0.5 * nu1) - gammln(0.5 *
## nu2)))
## }
## <bytecode: 0x000001e2a5d020e8>
## <environment: namespace:math>
Pf
## function (f, nu1, nu2)
## {
## if (nu1 <= 0 | nu2 <= 0) {
## warning("bad nu1, nu2 for an F distribution")
## return(NULL)
## }
## if (f <= 0) {
## warning("bad f for an F distribution")
## return(NULL)
## }
## return(betai(0.5 * nu1, 0.5 * nu2, nu1 * f/(nu2 + nu1 * f)))
## }
## <bytecode: 0x000001e2ac6e95b8>
## <environment: namespace:math>
Qf
## function (p, nu1, nu2)
## {
## if (nu1 <= 0 | nu2 <= 0) {
## warning("bad nu1,nu2 for an F distribution")
## return(NULL)
## }
## if (p <= 0 || p >= 1) {
## warning("bad p for an F distribution")
## return(NULL)
## }
## x = invbetai(p, 0.5 * nu1, 0.5 * nu2)
## return(nu2 * x/(nu1 * (1 - x)))
## }
## <bytecode: 0x000001e2ac7c07e8>
## <environment: namespace:math>