>  기사  >  웹 프론트엔드  >  JavaScript 재미있는 질문: 분산 계산

JavaScript 재미있는 질문: 분산 계산

黄舟
黄舟원래의
2017-01-22 14:39:034580검색

'분산'은 통계 및 확률 이론에서 흔히 사용됩니다.

주어진 숫자의 차이를 어떻게 찾을 수 있나요?

먼저 평균을 구한 다음 각 숫자에서 평균을 빼서 제곱합을 구하고 마지막으로 수열의 크기로 나누어 분산을 구합니다.

예: [1, 2, 2, 3] 시퀀스가 ​​제공됩니다.

먼저 평균을 구합니다:

(1 + 2 + 2 + 3) / 4 => 2

그런 다음 분산을 구합니다:

( ( 1 - 2)^2 + (2 - 2)^2 + (2-2)^2 + (3 - 2)^2) / 4 => 0.5

때때로 이 결과는 다음과 같습니다. 매우 긴 소수의 경우 너무 많은 자릿수를 찾을 필요가 없으며, 이때 소수점 이하 3~4자리만 유지하면 JS의 toFixed 메소드를 사용하여 소수점을 반올림할 수 있습니다.

var variance = function(numbers) {  
    var mean = 0;  
    var sum = 0;  
    for(var i=0;i<numbers.length;i++){  
        sum += numbers[i];  
    }  
    mean = sum / numbers.length;  
    sum = 0;  
    for(var i=0;i<numbers.length;i++){  
        sum += Math.pow(numbers[i] - mean , 2);  
    }  
    return sum / numbers.length;  
};

위의 내용은 흥미로운 JavaScript 질문입니다: 분산 계산에 대한 자세한 내용은 PHP 중국어 웹사이트(www.php.cn)를 참조하세요.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.