ruby - How can I delete duplicate values from a hash of hash -


i need unique hash , value of "one" should never repeat.

for example,

hash= {"1"=>{"one"=>1,"two"=>2},    "2"=>{"one"=>1,"two"=>3},    "3"=>{"one"=>2,"two"=>3},    "4"=>{"one"=>1,"two"=>2}} 

then result should be,

hash= {"1"=>{"one"=>1,"two"=>2},     "3"=>{"one"=>2,"two"=>3}} 

ones_values = {} hash.delete_if |key, value|   ones_values[value["one"]] ? true : (ones_values[value["one"]] = true) && false end 

Comments