array.group_by {|x| x['type']}
ou se você quiser as coisas da chave do símbolo, você pode até
array.group_by {|x| "type_#{x['type']}".to_sym}
Acho que isso expressa melhor "Então, basicamente, cada matriz de hashes seria agrupado pelo valor de sua chave de tipo , e então retornado como um hash com uma matriz para cada tipo ", mesmo que saia do
:type
key sozinho nos hashes de saída.