In article <[EMAIL PROTECTED]>,
 [EMAIL PROTECTED] (Davy Paindaveine) wrote:

> In Matlab, the function finv computes the quantile function of a
> F-distribution. Unfortunately, the command finv(p,v1,v2) only allows for
> DFs v1 and v2 that are POSITIVE INTEGERS. Would anyone have a
> modification of this function which allows to deal with fractional DFs?
> (F-distributions are defined in terms of chi-squares, which themselves
> are particular cases of Gamma-distributions allowing non-integer DFs...)


As I remember, an F distribution is related to the
incomplete beta function (betainc) via a simple
transformation.

So just use a rootfinder like fzero on betainc and
you have a decent solution. It will not be vectorized,
but this is rarely something you do in volume unless
you are generating F random variates.

This last is possible too, though it takes a little
work. A trick I remember finding useful is to use
shift identities for the beta function. These allow
you to shift the beta parameters using an integration
by parts, useful for problems with very small beta
parameters. The identities are found in Abramowitz
and Stegun.

Yell if you need more help, and just remember it
could be worse - you could be trying to do all of
this for a non-central F.

HTH,
John D'Errico


-- 
There are no questions "?" about my real address.

The best material model of a cat is another, or preferably the same, cat.
A. Rosenblueth, Philosophy of Science, 1945
.
.
=================================================================
Instructions for joining and leaving this list, remarks about the
problem of INAPPROPRIATE MESSAGES, and archives are available at:
.                  http://jse.stat.ncsu.edu/                    .
=================================================================

Reply via email to