//---------标准差计算方法-------- //1、首先计算平均值 //2、遍历数组,计算数组各个元素与平均值的差的平方,并相加。 //3、把第2步计算得到的数据总和除以数组的长度再开根,即可得到标准差。 var ay = [5, 6, 8, 9]; //新建一个数组,初始化有四个元素{5,6,8,9} var length = ay.length; //获得ay数组长度,通过length var temp = new Array(length); //定义一个临时空数组,用来存储每个数组元素与平均值的差的平方。 for (var i = 0; i < length; i++) { var dev = parseFloat(ay[i]) - parseFloat(tempAvgl); //计算数组元素与平均值的差 temp[i] = Math.pow(dev, 2); //计算差的平方 } var powSum = 0; //用来存储差的平方总和 for (var j = 0; j < temp.length; j++) { if (temp[j].toString() != "" || temp[j].toString() != null) { powSum = parseFloat(powSum) + parseFloat(temp[j].toString()); //计算差的平方总和 } } var StDev = Math.sqrt(parseFloat(powSum) / parseFloat(length)).toFixed(2); //用差的平方总和除以数组长度即可得到标准差
最近在公司用extjs做项目,最烦做报表时的各自计算了,从初中毕业后,一直到大学,没再学过数学了(上过课,但是在打酱油)。。这是根据某百科的公式写出来的。。高手勿喷啊。。菜鸟一枚(今年毕业,现在实习)。