我有一個腳本調用該函數超過10萬次,所以我找反正擠多一點表現出來。優化該功能
您能否提供最佳化或在PHP計算標準偏差的另一種方法?
function calcStandardDev($samples){
$sample_count = count($samples);
for ($current_sample = 0; $sample_count > $current_sample; ++$current_sample) $sample_square[$current_sample] = pow($samples[$current_sample], 2);
return sqrt(array_sum($sample_square)/$sample_count - pow((array_sum($samples)/$sample_count), 2));
}
您計算'array_sum($ sample_square)/ $ sample_count'兩次。 – 2012-03-05 13:26:17
@OliCharlesworth第二次是'array_sum($ samples)/ $ sample_count'。所以沒有重複。 – Sirko 2012-03-05 13:29:38
也許[這一個](http://www.php.net/manual/en/function.stats-standard-deviation.php#97369)更快? – 2012-03-05 13:35:09