给定一个序列的数,如何求出它们的方差?
首先,求出它们的平均数,然后用每一个数减去平均数,求出它们的平方和,最后再除以序列的大小,就可以得到方差。
例如:给定一个序列,[1, 2, 2, 3]。
先求平均数:
(1 + 2 + 2 + 3) / 4 => 2
再求方差:
((1 - 2)^2 + (2 - 2)^2 + (2-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; };
声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com