Python でリストの最も一般的な要素を見つける方法
-
Python で
Counter
のmost_common()
を使用してリストの最も一般的な要素を検索する -
Python で
FreqDist()
のmax()
関数を使用してリストの最も一般的な要素を検索する -
Python で
NumPy
のunique()
関数を使用してリストの最も一般的な要素を検索する
![Python でリストの最も一般的な要素を見つける方法](/img/Python/feature-image---python-counter-most-common.webp)
この記事では、Python でリストの最も一般的な要素を見つけるいくつかの方法について説明します。以下は、Python で最も一般的なリスト要素を見つけるために使用できる関数です。
Counter
のmost_common()
関数を使用します。FreqDist()
のmax()
関数を使用します。NumPy
のunique()
関数を使用します。
Python で Counter
の most_common()
を使用してリストの最も一般的な要素を検索する
Python 2.7 以降では、Counter()
コマンドを使用して、Python で最も一般的なリスト要素を検索します。このためには、collections
標準ライブラリから Counter
クラスをインポートする必要があります。
Counter
は、要素がディクショナリキーとして格納され、キーのカウントがディクショナリ値として格納されるコレクションです。以下の例はこれを示しています。
from collections import Counter
list_of_words = ["Cars", "Cats", "Flowers", "Cats", "Cats", "Cats"]
c = Counter(list_of_words)
c.most_common(1)
print("", c.most_common(1))
ここで、上位 1つの要素は、most_common()
関数を most_common(1)
として使用して決定されます。
出力:
[('Cats', 4)]
Python で FreqDist()
の max()
関数を使用してリストの最も一般的な要素を検索する
FreqDist()
の max()
コマンドを使用して、Python で最も一般的なリスト要素を見つけることもできます。このためには、最初に nltk
ライブラリをインポートします。以下の例はこれを示しています。
import nltk
list_of_words = ["Cars", "Cats", "Flowers", "Cats"]
frequency_distribution = nltk.FreqDist(list_of_words)
print("The Frequency distribution is -", frequency_distribution)
most_common_element = frequency_distribution.max()
print("The most common element is -", most_common_element)
ここで、度数分布リストは最初に FreqDist()
関数を使用して作成され、次に最も一般的な要素が max()
関数を使用して決定されます。
出力:
The Frequency distribution is - <FreqDist with 3 samples and 4 outcomes>
The most common element is - Cats
Python で NumPy
の unique()
関数を使用してリストの最も一般的な要素を検索する
最後に、NumPy
ライブラリの unique()
関数を使用して、Python でリストの最も一般的な要素を見つけることができます。次の例はこれを示しています。
import numpy
list_of_words = [
"Cars",
"Cats",
"Flowers",
"Cats",
"Horses",
"",
"Horses",
"Horses",
"Horses",
]
fdist = dict(zip(*numpy.unique(list_of_words, return_counts=True)))
print("The elements with their counts are -", fdist)
print("The most common word is -", list(fdist)[-1])
この操作の出力は、キーと値のペアの辞書です。ここで、値は特定の単語の数です。unique()
関数を使用して、配列の一意の要素を見つけます。次に、zip()
コマンドを使用して、複数のコンテナーの同様のインデックスをマップします。この例では、これを使用して度数分布を取得します。出力にはキーと値のペアが昇順でリストされるため、最も一般的な要素は最後の要素によって決定されます。
出力:
The elements with their counts are - {'': 1, 'Cars': 1, 'Cats': 2, 'Flowers': 1, 'Horses': 4}
The most common word is - Horses