z-результаты (стандартное отклонение и среднее значение) в PHP - PullRequest
16 голосов
/ 25 марта 2011

Я пытаюсь рассчитать Z-оценки, используя PHP. По сути, я ищу наиболее эффективный способ расчета среднего и стандартного отклонения набора данных (массив PHP). Любые предложения о том, как сделать это в PHP?

Я пытаюсь сделать это за наименьшее количество шагов.

Ответы [ 3 ]

31 голосов
/ 25 марта 2011

для вычисления среднего значения, которое вы можете сделать:

$mean = array_sum($array)/count($array)

стандартное отклонение выглядит так:

// Function to calculate square of value - mean
function sd_square($x, $mean) { return pow($x - $mean,2); }

// Function to calculate standard deviation (uses sd_square)    
function sd($array) {
    // square root of sum of squares devided by N-1
    return sqrt(array_sum(array_map("sd_square", $array, array_fill(0,count($array), (array_sum($array) / count($array)) ) ) ) / (count($array)-1) );
}

сразу эта страница

14 голосов
/ 25 марта 2011

Как насчет использования встроенного пакета статистики, такого как stats_standard_deviation и stats_harmonic_mean . Я не могу найти функцию для стандартных средств, но если вы знаете что-нибудь о статистике, я уверен, что вы можете что-то выяснить, используя встроенные функции.

4 голосов
/ 18 марта 2013
   function standard_deviation($aValues)
{
    $fMean = array_sum($aValues) / count($aValues);
    //print_r($fMean);
    $fVariance = 0.0;
    foreach ($aValues as $i)
    {
        $fVariance += pow($i - $fMean, 2);

    }       
    $size = count($aValues) - 1;
    return (float) sqrt($fVariance)/sqrt($size);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...