標準偏差を求める

統計

概要

 閲覧数:1881  投稿日:2014-05-03  更新日:2014-05-05  

PECLライブラリに入っている関数


コード

$data = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
 
$result = stats_standard_deviation($data);
 
var_dump($result); //float(31.84399472428)
 
/******************************************************************
 * 標準偏差取得
 *****************************************************************/
function stats_standard_deviation($ary) {
        // 平均取得
        $avg = array_sum($ary)/count($ary);
 
        // 各値の平均値との差の二乗【(値-平均値)^2】を算出
        $diff_ary = array();
        foreach ($ary as $val) {
                $diff = $val-$avg;
                $diff_ary[] = pow($diff,2);
        }
 
        // 上記差の二乗の合計を算出
        $diff_total = array_sum($diff_ary);
        // 平均を算出
        $diff_avg   = $diff_total/count($diff_ary);
 
        // 平方根を取る(標準偏差)
        $stdev = sqrt($diff_avg);
 
        // 標準偏差を返す
        return $stdev;
}



結果

float(2.872281323269)



タグ


array_sum 





平均値、分散、標準偏差を求める