[MATLAB] 숫자열에 숫자가 아닌 것(NaN)이 포함되어 있을 때 평균내기, mean 함수 응용

만약 100개 숫자가 있는데, 그 중 몇 개가 NaN, 즉 Not a Number인 경우 평균을 어떻게 구하겠는가? 당연히 숫자가 아닌 것이 포함되어 있으므로 제대로 평균을 구할 수가 없다. 그렇지만 그 NaN들을 제외하고 평균을 구하고 싶을 수도 있다. 

 

숫자열이 다음과 같다고 가정해보자. 

 

A = [1, 2, 3, 4, 5, NaN, 7, 8, 9, 10];

 

이런 경우에는 다음과 같이 코드를 작성하면 된다.

 

mean(A, 'omitnan');

 

그러면 NaN을 제외하고 나머지 값들에 대한 평균값을 계산해준다. 

 

참고로 (1 + 2 + 3 + 4 + 5 + 7 + 8 + 9 + 10)/9 = 5.4444이다. 

 

만약 'omitnan'없이 그냥 mean(A)를 해주면 NaN이 출력된다.

 

 

태그 : , ,

댓글()