首頁  >  文章  >  web前端  >  JavaScript趣題:計算方差

JavaScript趣題:計算方差

黄舟
黄舟原創
2017-01-22 14:39:034580瀏覽

「方差」通常用於統計學和機率論。

給定一個序列的數,如何求出它們的變異數?

首先,求出它們的平均數,然後用每一個數減去平均數,求出它們的平方和,最後再除以序列的大小,就可以得到方差。

例如:給定一個序列,[1, 2, 2, 3]。

先求平均數:

(1 + 2 + 2 + 3) / 4 => 2

再求變異數:

((1 - 2)^2 + (2 - 2)^2 + (22 -2)^2 + (3 - 2)^2) / 4 => 0.5

有時,這個結果它會是個很長的小數,我們不用求出這麼多人,保留3,4位小數就可以了,這時就可以用到JS的toFixed方法,對小數進行四捨五入。

var variance = function(numbers) {  
    var mean = 0;  
    var sum = 0;  
    for(var i=0;i<numbers.length;i++){  
        sum += numbers[i];  
    }  
    mean = sum / numbers.length;  
    sum = 0;  
    for(var i=0;i<numbers.length;i++){  
        sum += Math.pow(numbers[i] - mean , 2);  
    }  
    return sum / numbers.length;  
};

以上就是JavaScript趣題:計算變異數的內容,更多相關內容請關注PHP中文網(www.php.cn)!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn