@OrdeO
just......newbie

Как просумировать значения нескольких хэшей в руби?

есть массив из несколько хэшей (количество меняется)
пример
arr = [{name: 'd1', value: 10}, {name: 'd2', value: 30}, {name: 'd1', value: 5},  {name: 'd3', value:4}, {name: 'd2', value: 5}]
Как получить из него массив с суммой у одинаковых имен
т.е. должно получиться что-то вроде этого
arr = [{name: 'd1', value: 15], {name: 'd2', value: 35}, {name: 'd3', value: 4}
  • Вопрос задан
  • 97 просмотров
Решения вопроса 1
0xD34F
@0xD34F
arr
  .group_by{|n| n[:name]}
  .map{|n| { name: n[0], value: n[1].sum{|m| m[:value]} }}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы