ちょっと、各要素がいくつかの値とカウントを含むハッシュである配列があります。
result = [
{"count" => 3,"name" => "user1"},
{"count" => 10,"name" => "user2"},
{"count" => 10, "user3"},
{"count" => 2, "user4"}
]
次のように、配列をカウントでソートできます。
result = result.sort_by do |r|
r["count"]
end
ここで、カウントに基づいて上位 n エントリを取得できるようにしたい (first(n) だけでなく) これを行うエレガントな方法はありますか? 例として、 n = 1 とすると、結果セットが期待できます。
[{"count" => 10,"name" => "user2"}, {"count" => 10, "user3"}]
最高スコアのすべてのエントリを求めたので..上位2つの最高スコアを求めた場合、私は得るでしょう
[{"count" => 10,"name" => "user2"}, {"count" => 10, "user3"}, {"count" => 3, "user1"}]