js 计算标准差
2020-11-13 本文已影响0人
aaagu1234
var arr = [95,85,75,65,55,45];
function standardDeviation( arr ){
var avg = 0;
var length = arr.length;
var len = arr.length;
var sum = 0;
for(var i = 0; i < len ; i++){
sum += arr[i];
}
avg = sum / len;
var temp = [];
for (var i = 0; i < length; i++) {
var dev = (arr[i]) - avg ; //计算数组元素与平均值的差
temp[i] = Math.pow(dev, 2); //计算差的平方
}
var powSum = 0; //用来存储差的平方总和
for (var j = 0; j < temp.length; j++) {
if (temp[j]) {
powSum += temp[j]; //计算差的平方总和
}
}
//用差的平方总和除以数组长度即可得到标准差
return parseFloat( Math.sqrt(powSum / length).toFixed(2));
}
standardDeviation(arr);