本記事では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内を見てみると単語ごとに分けられているのが分かると思います。
参考記事
本記事の内容は以上となります。
ご紹介した処理はやりたいプログラムによっては必要となり、知らなかったら面倒になること間違いないので、ぜひ知っておきたい内容となっています。
本記事は以上です。お疲れさまでした。