• PHP Video Tutorials

PHP - Stats CDF F() Function



Definition and Usage

The stats_cdf_f() function can calculate any one parameter of F distribution given values for the others.

Syntax

float stats_cdf_f ( float $par1, float $par2, float $par3, int $which )

Parameters

Sr.No Parameter Description
1

par1

The first parameter

2

par2

The second parameter

3

par3

The third parameter

4

which

The flag to determine what to be calculated

Return Values

This function can return cumulative distribution function, its inverse, or one of its parameters of the F distribution. The kind of return value and parameters (par1, par2, and par3) have determined by which.

Return value and parameters

The following table lists the return value and parameters by which.

  • CDF denotes cumulative distribution function.

  • x denotes the value of the random variable.

  • d1 denotes the degree of freedoms of the F distribution.

  • d2 denotes the degree of freedoms of the F distribution.

which Return value par1 par2 par3
1 CDF x d1 d2
2 x CDF d1 d2
3 d1 x CDF d2
4 d2 x CDF d1

Dependencies

This function was first introduced in statistics extension (PHP 4.0.0 and PEAR 1.4.0). We have used latest release of stats-2.0.3 (PHP 7.0.0 or newer and PEAR 1.4.0 or newer) for this tutorial.

Example

In the following example when which=1, calculate P from (F, DFN, DFD).

  • P is the integral from 0 to F of the f-density. Input range: [0,1].

  • F is the upper limit of integration of the f-density. Input range: [0, +infinity).

  • DFN is the degrees of freedom of the numerator sum of squares.

  • DFD is the degrees of freedom of the denominator sum of squares.

<?php
   // which = 1 : calculate P from (F, DFN, DFD)
   var_dump(round(stats_cdf_f(1, 3, 2, 1), 6));
?>

Output

This will produce following result −

float(0.464758)

Example

In the following example when which=2, calculate F from (P, DFN, DFD).

  • P is the integral from 0 to F of the f-density. Input range: [0,1].

  • F is the upper limit of integration of the f-density. Input range: [0, +infinity).

  • DFN is the degrees of freedom of the numerator sum of squares.

  • DFD is the degrees of freedom of the denominator sum of squares.

<?php
   // which = 2 : calculate F from (P, DFN, DFD)
   var_dump(round(stats_cdf_f(0.464758002, 3, 2, 2), 6));
?>

Output

This will produce following result −

float(1)

Example

In the following example when which=3, calculate DFN from (P, F, DFD).

  • P is the integral from 0 to F of the f-density. Input range: [0,1].

  • F is the upper limit of integration of the f-density. Input range: [0, +infinity).

  • DFN is the degrees of freedom of the numerator sum of squares.

  • DFD is the degrees of freedom of the denominator sum of squares.

<?php
   // which = 3 : calculate DFN from (P, F, DFD)
   var_dump(round(stats_cdf_f(0.464758002, 1, 2, 3), 6));
?>

Output

This will produce following result −

float(3)

Example

In the following example when which=4, calculate DFD from (P, F, DFN).

  • P is the integral from 0 to F of the f-density. Input range: [0,1].

  • F is the upper limit of integration of the f-density. Input range: [0, +infinity).

  • DFN is the degrees of freedom of the numerator sum of squares.

  • DFD is the degrees of freedom of the denominator sum of squares.

<?php
   // which = 4 : calculate DFD from (P, F, DFN)
   var_dump(round(stats_cdf_f(0.464758002, 1, 3, 4), 6));
?>

Output

This will produce following result −

float(2)

Example

Following is an error case. In the following example which<1, warning is displayed in logs.

<?php
var_dump(stats_cdf_f(1, 3, 2, 0)); // which < 1
?>

Output

This will produce following result and a warning in logs PHP Warning: stats_cdf_f(): Fourth parameter should be in the 1..4 range

bool(false)

Example

Following is an error case. In the following example which>4, warning is displayed in logs.

<?php
   var_dump(stats_cdf_f(1, 3, 2, 5));   // which > 4
?>

Output

This will produce following result and a warning in logs PHP Warning: stats_cdf_f(): Fourth parameter should be in the 1..4 range

bool(false)
Advertisements