Java 方差、标准差计算

2020-04-22 16:04:52来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Java 方差、标准差计算

话不多说直接上代码

/**
 * 数学相关计算工具类
 * @author gjs
 *
 */
public class MathUtil {
    
    /**
     * 传入一个数列x计算平均值
     * @param x
     * @return 平均值
     */
    public static double average(double[] x) {
        int n = x.length;            //数列元素个数
        double sum = 0;
        for (double i : x) {        //求和
            sum+=i;
        }
        return sum/n;
    }
    
    /**
     * 传入一个数列x计算方差
     * 方差s^2=[(x1-x)^2+(x2-x)^2+......(xn-x)^2]/(n)(x为平均数)
     * @param x 要计算的数列
     * @return 方差
     */
    public static double variance(double[] x) {
        int n = x.length;            //数列元素个数
        double avg = average(x);    //求平均值
        double var = 0;
        for (double i : x) {
            var += (i-avg)*(i-avg);    //(x1-x)^2+(x2-x)^2+......(xn-x)^2
        }
        return var/n;
    }
    
    /**
     * 传入一个数列x计算标准差
     * 标准差σ=sqrt(s^2),即标准差=方差的平方根
     * @param x 要计算的数列
     * @return 标准差
     */
    public static double standardDiviation(double[] x) {
        return  Math.sqrt(variance(x));
    }

 


原文链接:https://www.cnblogs.com/gaojinshun/p/12749884.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:10年阿里大牛替你整理200道Java面试真题,让你横扫大厂.

下一篇:springcloud 项目源码 微服务 分布式 Activiti6 工作流 vue.js h