반응형
표준편차
값(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 |
댓글