Skip to content

alchemist314/php_probability_tools

Repository files navigation

php_probability_tools

How it works:

You have a normal distribution data: 57, 56, 57, 59, 62, 58, 59, 73...

You want to calculate a probability for one of them (for example: 83)

Use Laplace function:


1. Calculate a Mean value:

2. Calculate a Dispersion value:

3. Calculate a Sigma value (standard deviation):

Put a values to the function:

Calculate the probability:

(solving the equation is to find a closest value from a Gaussian-Laplace table or you can use probability tools described below)

Use tools:

  1. Calculate a Mean value and a Sigma value (standard deviation):
<?php

use \CalcMean\cCalcMean;

include "class_mean.php";
$oMean = new cCalcMean();
$aArray=[57, 56, 57, 59, 62, 58, 59, 73];
$oMean->fGetResult($aArray);
print "mean: ".$oMean->sMean. ", sigma: ".$oMean->sSigma;

// mean: 60.125 sigma: 5.1584275704908
?>
  1. Calculate the Laplace probability (current application supports only integer given probability value):
<?php

use \LaplaceProbability\cLaplaceProbability;

include "class_laplace.php";

$oLaplace= new cLaplaceProbability();
// 83 - a given value, 60 - Mu (a Mean value), 5 - a Sigma value (standard deviation)
print number_format($oLaplace->fPDF(83, 60, 5),10);

// 0.0000100000

?>
  1. Calculate a denominator:
<?php

use \FindDenominator\cFindDenominator;

include "class_denominator.php";

$oFindOne = new cFindDenominator();
print "result: ".$oFindOne->fGetResult(0.0000100000,true);

// result: 1/99000

?>

Releases

No releases published

Packages

No packages published

Languages