This is probably remedial but I can't figure it out. I've tried using d3 and played with lodash to get an efficient solution, but didn't get anything close.
I have an array of objects in JavaScript. If the [Selected] value is true, I want to create an object grouped by [Version Name] with a count of distinct zones, and a sum of the totals per version. For instance with object...
[
{ Selcted: false, Version Name: "aaa", Zone: "11111", Value: 5 },
{ Selcted: false, Version Name: "aaa", Zone: "11111", Value: 10 },
{ Selcted: true, Version Name: "aaa", Zone: "11111", Value: 15 },
{ Selcted: true, Version Name: "aaa", Zone: "11111", Value: 20 },
{ Selcted: true, Version Name: "aaa", Zone: "22222", Value: 25 },
{ Selcted: true, Version Name: "bbb", Zone: "22222", Value: 30 },
{ Selcted: true, Version Name: "bbb", Zone: "22222", Value: 35 },
{ Selcted: true, Version Name: "bbb", Zone: "2222", Value: 40 }
]
Should return a result of
[
{ Version Name: "aaa", Zone Count: "2", Value Sum: 50 },
{ Version Name: "bbb", Zone Count: "1", Value Sum: 105 },
]