Mesclar matriz de hashes em um hash
a = [{a: 1, b: 2,c: 3},{b: 4, d: 1},{b: 3,c: 1}]
a.reduce(&:merge)
=> {:a=>1, :b=>3, :c=>1, :d=>1}
Remover hashes vazios da matriz
a = [{},{a: 1},{},{}]
a.reject(&:empty?)
=> [{:a=>1}]
Conteúdo para você se capacitar em programação