sorted_by_second_value = Hash[hash.sort_by <http://ruby-doc.org/core-2.2.2/Enumerable.html#method-i-sort_by> { |_, v| v[1] }]
For those saying ruby hashes are unordered: http://ruby-doc.org/core-2.2.2/Hash.html Hashes enumerate their values in the order that the corresponding keys were inserted. sorted_by_second_value .map { |_, v| v[1] } => [74, 75, 84, 99, 100] Paul On Fri, May 29, 2015 at 6:24 AM, Gm <javapla...@gmail.com> wrote: > Hi, I have this hash: > > hash = { 4049=>[4133, 100], 5814=>[4075, 84], 382543=>[4064, 74], > 382544=>[4065, 99], 382545=>[4066, 75] } > > I need to sort (DESC) this hash by the second item of array. > Example: 100, 84, 74, 99, 75 > > How can I solve this problem ? I'm using sort method but can't work it out. > > Thanks. > > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to rubyonrails-talk+unsubscr...@googlegroups.com. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/rubyonrails-talk/3ea488c8-cd97-4f03-b31e-f27b44c009ee%40googlegroups.com > <https://groups.google.com/d/msgid/rubyonrails-talk/3ea488c8-cd97-4f03-b31e-f27b44c009ee%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-talk@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/CAMEJyivM1EsSa4572n32G09A4CRD70Zcxm3N%2Bb5BOCsAirzaRw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.