I work with Angular JS framework and have an array built with NodeJS :
var arr = [{"object":"Anguille","fct":"Type A","value":"2"},{"object":"Athérine","fct":"Type A","value":"1.0031643586595139"}, {"object":"Epinoche","fct":"Type B","value":"1"}, {"object":"Mulet","fct":"Type B","value":"5"}];
I’d like to calculate the mean of “value” grouped by each “fct” so that I could get :
{ 'Type A': 1.5, 'Type B': 3 }
After some researches I managed to group by the values but only with a sum
and not a mean
. I guess I should use the arr.reduce
function but don’t really know how to insert it in my code.
Here is my snippet :
const obj = {};
arr.forEach((item) => {
obj[item.fct] = obj[item.fct] ? obj[item.fct] +
parseInt(item.value) : parseInt(item.value);
});
console.log(obj);
I must admit I’m getting stuck. Do you know how to adapt my snippet with a mean instead of a sum ?
Any help would be greatly appreciated, thanks.