Python リストで一意の値を数える
胡金庫
2023年1月30日
Python
Python List
-
collections.counterを使用して Python リストの一意の値をカウントする -
setを使用して Python リストの一意の値をカウントする -
numpy.uniqueを使用して Python リストの一意の値をカウントする
この記事では、リスト内の一意の値をカウントするためのさまざまなメソッドを以下のメソッドを使って紹介します。
collections.Counterset(listName)np.unique(listName)
collections.counter を使用して Python リストの一意の値をカウントする
collections は Python の標準ライブラリであり、ハッシュ可能なオブジェクトを数えるための Counter クラスを含まれています。
Counter クラスには 2つのメソッドがあります。
keys()はリスト内の一意な値を返します。values()はリスト内のすべての一意な値の数を返します。
関数 len() を用いて Counter クラスを引数に渡すことで一意な値の数を得ることができます。
コード例
from collections import Counter
words = ["Z", "V", "A", "Z", "V"]
print(Counter(words).keys())
print(Counter(words).values())
print(Counter(words))
出力:
['V', 'A', 'Z']
[2, 1, 2]
3
set を使用して Python リストの一意の値をカウントする
set は反復可能であり、変異可能であり、要素の重複を持たない無秩序なコレクションデータ型です。リストを set() 関数を使って set に変換した後、set の長さを取得して、リスト内の一意でない値を数えることができます。
コード例:
words = ["Z", "V", "A", "Z", "V"]
print(len(set(words)))
出力:
3
numpy.unique を使用して Python リストの一意の値をカウントする
また、return_counts パラメータに True を指定した場合は、それぞれの値のカウントも返します。
コード例:
import numpy as np
words = ["Z", "V", "A", "Z", "V"]
np.unique(words)
print(len(np.unique(words)))
出力:
3
チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
著者: 胡金庫
