【Ruby】Rubyで配列の各要素の出現回数を取得する方法

Rubyでプログラミングをしていて配列の各要素をユニークにしたものを取得したいことがあると思います。
コードを見たほうが早いかもしれません、例えばこんな感じです。


ユニークになった各要素を取得することはuniqメソッドを使えば簡単にできますが、ユニークになった各要素の出現回数を取得するにはどうでしょう?

今のところ簡潔にできる方法が見当たらないのですが、以下のようにすれば取得できそうです。



同じ配列を使ってやってみました。

{:配列の要素 => 出現回数}

こんな感じのハッシュで取得できそうです。

もちろん数字だけでなく文字列の配列でもできます。



少し応用として、各文字列の前後に空白とかが入っていて、同じ文字列としてみなしてカウントしたい場合もあるかと思います。

こんな状況です。



本来"age"と"age "は同じ物としてカウントしたい。という場合ですね。

そんなときは



このように結果のハッシュのキーを設定する部分でstripメソッドを実行して上げればいいと思います。
いろいろな処理をこのタイミングで実装してあげれば他にも役にたつことがありそうですね。(大文字小文字を区別しない。とかとか)

ということでRubyで配列の要素の出現回数を調べる方法でした。

役に立ったと思ったら下記をクリックお願いします。

今後の更新の励みになります。

にほんブログ村 IT技術ブログ IT技術メモへ

にほんブログ村 IT技術ブログへ

不定期ですが技術ネタを共有して行きますのでもしよろしければ購読いただければと思います

follow us in feedly

スポンサーリンク

スポンサーサイト
テーマ : プログラミング
ジャンル : コンピュータ

Tag:Ruby  Trackback:0 comment:0 

プロフィール

6rats

Author:6rats
こんにちは、ITベンチャーで働くエンジニアです
主に自分の周りで起きた技術的なことをメモとして書き残して行きます。
Android以外にもRuby/Ruby on RailsやFuelPHPなどなどたまにやります。基本的なスタンスとしては興味があるもしくは必要になったらいろんなことにチャレンジします。
最近はiOSアプリ開発を始めています。

購読
follow us in feedly
個人プロダクト

Androidアプリ

Twitterクライアント

Webアプリケーション

EcPriceWatch(Amazon価格の推移を計測、最安値を知らせるサービス)
Google AdSense
ブログ村
にほんブログ村 IT技術ブログへ
にほんブログ村
ブロとも申請フォーム

この人とブロともになる