Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 데이터 세트의 평균 모드가 동일합니까?

<시간/>

정렬된 숫자의 배열을 받는 JavaScript 함수를 작성해야 합니다. 함수는 데이터 세트의 평균과 모드를 계산해야 합니다. 그런 다음 평균과 모드가 같으면 함수는 true를 반환하고 그렇지 않으면 false를 반환해야 합니다.

예:

입력 배열이 -

인 경우
const arr = [5, 3, 3, 3, 1];

그러면 이 배열의 평균과 중앙값이 모두 3이므로 이 배열의 출력은 참이어야 합니다.

예시

다음은 코드입니다 -

const arr = [5, 3, 3, 3, 1];
mean = arr => (arr.reduce((a, b) => a + b))/(arr.length);
mode = arr => {
   let obj = {}, max = 1, mode;
   for (let i of arr) {
      obj[i] = obj[i] || 0;
      obj[i]++
   }
   for (let i in obj) {
      if (obj.hasOwnProperty(i)) {
         if ( obj[i] > max ) {
            max = obj[i]
            mode = i;
         }
      }
   }
   return +mode;
}
const meanMode = arr => mean(arr) === mode(arr)
console.log(meanMode(arr));

출력

다음은 콘솔의 출력입니다 -

true