Weighted arithmetic mean (average) in JavaScript
To do calcaculating weight mean of prvide of array
function weightedMean(arrValues, arrWeights) {
var result = arrValues.map(function (value, i) {
var weight = arrWeights[i];
var sum = value * weight;
return [sum, weight];
}).reduce(function (p, c) {
return [p[0] + c[0], p[1] + c[1]];
}, [0, 0]);
return result[0] / result[1];
}
weightedMean([251, 360, 210], [0.1, 0.5, 0.7]);
// => 270.8461538461539