Contar elementos duplicados na matriz ruby ​​(Ruby 1.9+)

Retorna um hash com o valor do elemento como uma chave e sua contagem

a = [1, 2, 3, 2, 5, 6, 7, 5, 5]
a
.each_with_object(Hash.new(0)) { |o, h| h[o] += 1 }

# => {1=>1, 2=>2, 3=>1, 5=>3, 6=>1, 7=>1}

Para filtrar o resultado com um certo limite, adicione …

.map{|k,v| k if v >= 2}.compact

# => [2, 5]