Мне нужно использовать эту таблицу, чтобы получить вероятность от заданного значения Z:
https://statistics.laerd.com/statistical-guides/img/normal-table-large.png
Я уверен, что должен быть лучший способ получить эти значения на php, но я не знаю, как их вычислить.
Любая помощь будет принята с благодарностью.
Таблица, я полагаю, является CDF нормальное распределение. Я закодировал это, используя выражение для
функция ошибки приближение.
Код не проверен!
function sgn( $x ) {
if ( $x < 0 )
return -1;
return 1;
}
function erf( $x ) {
$e = exp(-$x*$x);
$e2 = exp(-$x*$x*2);
$q = sqrt(pi())/2 + 31*$e/200 - 341*$e2/8000;
return 2*sgn($x)*sqrt(1-$e)*$q/sqrt(pi());
}
function CDF( $x ) {
return (1 + erf($x / sqrt(2))) / 2;
}
print_r(CDF(0));
print_r(CDF(0.1));
....
ОБНОВИТЬ
Вот быстрый (не проверенный!) Код для вычисления erf () с 4 терминами
function erf( $x ) {
$e = exp(-$x*$x);
$t = 1.0 - $e;
$s = 1. + $t*(-1./12. + $t*(-7./480. + $t*( -5./896. +$t * (-787./276480.))));
return 2.*sgn($x)*sqrt($t)*$s/sqrt(pi());
}
Других решений пока нет …