【Python】リストの要素をカウントする時に便利なCollectionsのCounterをご紹介!

本ページには、プロモーションが含まれています。

本記事ではPythonでリストの要素をカウントする際に便利なCollectionsライブラリのCounterについてご紹介していきます。

ソースコード

gist99cd201e4eba4601fe87872ca8ceb191

1.基本形

まずCollectionsライブラリのCounterが、①と部分となります。

collections.Counter関数で要素を全てカウントしてくれるため、後は欲しいデータを取り出すだけとなります。

注意点として、num_count[3]の"3"は、要素を取り出すためのKeyです。

3番目の配列を指定しているわけではないため、Keyの"3"の値、5を取り出しています。

most_common関数については、出現回数を基準にソートしてくれる便利な関数で様々な使い方ができます。

2.要素を分割した場合

次に要素を分割した場合の例が、②の部分となります。

組み込み関数zip()を利用すると、それぞれの変数に値を渡せます。

注意点として、始めにKeys、後ろにValues(Count)です。

ここを逆にしてしまうと、かなりゴチャゴチャになるので間違わないようにご注意ください。

3.文字列の場合

最後に少しだけ複雑ですが、文字列の場合のカウント方法が③です。

日本語のカウントについてはできませんが、スペースで区切られている英文ならcollections.Counter関数でも頻出単語を計測できます。

日本語について知りたい場合は、どこかで書こうと思いますのでお待ちいただければ幸いです。

 

ここのプログラム解説を簡単にすると

text.replace(',', '').replace('.', '')

上記のプログラムで、スペース以外の邪魔な部分を削除。

 

text_remove.split()

でスペースで区切っています。

そのためword_list内を見てみると単語ごとに分けられているのが分かると思います。

参考記事

qiita.com

note.nkmk.me


本記事の内容は以上となります。

ご紹介した処理はやりたいプログラムによっては必要となり、知らなかったら面倒になること間違いないので、ぜひ知っておきたい内容となっています。

本記事は以上です。お疲れさまでした。