• PHP Video Tutorials

PHP - Stats CDF Uniform() Function



Definition and Usage

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

Syntax

float stats_cdf_uniform( 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

The stats_cdf_uniform() function can return the cumulative distribution function, its inverse, or one of its parameters of the uniform 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.

  • a denotes the lower bound of the uniform distribution.

  • b denotes the higher bound of the uniform distribution.

which Return value par1 par2 par3
1 CDF x a b
2 x CDF a b
3 a x CDF b
4 b x CDF a

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 (X, A, B).

  • P is the integral from 0 to X of the uniform distribution. Input range: [0,1].

  • X is the upper limit of integration of the uniform-density.

  • A is the first parameter of uniform-density.

  • B is the second parameter of uniform-density.

<?php
   // which = 1 : calculate P from (X, A, B)
   var_dump(stats_cdf_uniform(2.5, 1, 3, 1));  // A <= X <= B
   var_dump(stats_cdf_uniform(0, 1, 3, 1));    // X < A
   var_dump(stats_cdf_uniform(4, 1, 3, 1));    // X > B
?>

Output

This will produce following result −

float(0.75) float(0) float(1)

Example

In the following example when which=2, calculate X from (P, A, B).

  • P is the integral from 0 to X of the uniform distribution. Input range: [0,1].

  • X is the upper limit of integration of the uniform-density.

  • A is the first parameter of uniform-density.

  • B is the second parameter of uniform-density.

<?php
   // which = 2 : calculate X from (P, A, B)
   var_dump(stats_cdf_uniform(0.75, 1, 3, 2));
?>

Output

This will produce following result −

float(2.5)

Example

In the following example when which=3, calculate A from (P, X, B).

  • P is the integral from 0 to X of the uniform distribution. Input range: [0,1].

  • X is the upper limit of integration of the uniform-density.

  • A is the first parameter of uniform-density.

  • B is the second parameter of uniform-density.

<?php
   // which = 3 : calculate A from (P, X, B)
   var_dump(stats_cdf_uniform(0.75, 2.5, 3, 3));
?>

Output

This will produce following result −

float(1)

Example

In the following example when which=4, calculate B from (P, X, A).

  • P is the integral from 0 to X of the uniform distribution. Input range: [0,1].

  • X is the upper limit of integration of the uniform-density.

  • A is the first parameter of uniform-density.

  • B is the second parameter of uniform-density.

<?php
   // which = 4 : calculate B from (P, X, A)
   var_dump(stats_cdf_uniform(0.75, 2.5, 1, 4));
?>

Output

This will produce following result −

float(3)

Example

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

<?php
   var_dump(stats_cdf_uniform(2.5, 1, 3, 0));  // which < 1
?>

Output

This will produce following result and a warning in logs PHP Warning: stats_cdf_uniform(): 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_uniform(2.5, 1, 3, 5));  // which > 4
?>

Output

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

bool(false)
Advertisements