Javascript: преобразование массива ответа объекта с помощью lodash, подчеркивания или corejavascript

Я работаю с highChart, чтобы создать диаграмму столбца. Любой, как я дошел до создания следующего массиваObj через общение с базой данных.

Теперь мне нужно преобразовать следующееsource массив объектов для вывода ниже.

var source = [
{data: 258, name: '2014'}
{data: 18, name: '2016'}
{data: 516, name: '2014'}
{data: 0, name: '2014'}
{data: 354, name: '2014'}
{data: 18, name: '2016'}
]`

Преобразовать этот массив объекта в

Output

[{
    name: '2014',
    data: [258, 516, 354]
  }, {
    name: '2016',
    data: [18, 0, 18]
}]

По сути, я хочу, чтобы мой массив группировался по имени (году), а данные должны быть в массиве.

Вот решения, которые я применил.

var source = [];
_.each(source, function(singlerec) {
      source.push({
        name: singlerec.name,
        data: singlerec.data  // Here It only assign single record
      });
    });

Ответы на вопрос(3)

Ваш ответ на вопрос