Каков наилучший способ преобразования большого массива в несколько вложенных массивов на основе свойств объектов в исходном массиве?Например, у меня есть массив объектов (все объекты имеют одинаковые свойства):
array = [
{:name => "Jim", :amount => "20"},
{:name => "Jim", :amount => "40"},
{:name => "Jim", :amount => "30"},
{:name => "Eddie", :amount => "7"},
{:name => "Eddie", :amount => "12"},
{:name => "Pony", :amount => "330"},
{:name => "Pony", :amount => "220"},
{:name => "Pony", :amount => "50"}
]
Обратите внимание, что все объекты с одинаковыми свойствами name являются последовательными в массиве.Теперь я хочу сгруппировать объекты в подмассивы на основе свойства name.Что мне нужно:
result = [
[
{:name => "Jim", :amount => "20"},
{:name => "Jim", :amount => "40"},
{:name => "Jim", :amount => "30"}
],
[
{:name => "Eddie", :amount => "7"},
{:name => "Eddie", :amount => "12"}
],
[
{:name => "Pony", :amount => "330"},
{:name => "Pony", :amount => "220"},
{:name => "Pony", :amount => "50"}
]
]
Какой лучший способ сделать это?Спасибо.