본문 바로가기
Back-End/Java

Java 과제 - 표준편차 구하기

by newny 2023. 3. 15.
반응형

표준편차

값(a,b,c,...)에서
값의 평균(vAvg)을
뺀 값(a-vAvg,b-vAvg,c-vAvg,...)들의
절대값(deviation1,deviation2,deviation3,...)들의
평균(standard deviation)
 
예) 5개의 값이 주어졌을 때 (85, 90, 93, 86, 82)
1. 값의 평균을 구함
평균 : 87.2
 
2. 각각의 값에서 평균 빼기
85 - 87.2 = -2.2
90 - 87.2 = +2.8
93 - 87.2 = +5.8
86 - 87.2 = -1.2
82 - 87.2 = -5.2
 
2. 편차 : 각각의 값에서 평균을 뺀 값의 절대값
(2.2, 2.8, 5.8, 1.2, 5.2)
 
3. 표준편차 : 편차들의 평균값
(2.2 + 2.8 + 5.8 + 1.2 + 5.2)/5 -> 3.44
 
[코드]

public static double sd (int[] a) {
    int vSum = 0; // 값들의 합
    for(int i=0; i<a.length; i++) {
        vSum += a[i];
    }

    double aver = (double) vSum /a.length; // 값들의 평균

    double[] deviations = new double[a.length]; // 편차 : 값에서 값들의 평균을 뺀 절대값
    for(int i=0; i<a.length; i++) {
        deviations[i] = Math.abs(a[i]-aver);
    }

    double dSum = 0; // 편차들의 합
    for(int i=0; i<a.length; i++) {
        dSum += deviations[i];
    }

    return dSum/a.length; // 표준편차 : 편차들의 평균
}
반응형

'Back-End > Java' 카테고리의 다른 글

Java(4)  (0) 2023.03.16
Java(3)  (0) 2023.03.15
Java 과제 - 정렬 알고리즘 코드 작성  (0) 2023.03.14

댓글