Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのリストで最も頻度の高い要素


多くの統計データ分析は、特定の値のリストで最大頻度を持つ値を見つけようとします。 Pythonは、特定のリストからそのような値を見つけることができる複数のアプローチを提供します。以下がアプローチです。

カウンターの使用

コレクションモジュールのCounter関数には、特定のリストで最も一般的な要素を直接見つけることができるオプションがあります。頻度が最も高い1つの要素に対してのみパラメーター1を渡し、頻度が最も高い2つの要素が必要な場合は2を渡すmost_common関数があります。

from collections import Counter

# Given list
listA = ['Mon', 'Tue','Mon', 9, 3, 3]

print("Given list : ",listA)

# Adding another element for each element
Newlist1 = Counter(listA).most_common(1)
Newlist2 = Counter(listA).most_common(2)


# Results
print("New list after duplication: ",Newlist1)
print("New list after duplication: ",Newlist2)

出力

上記のコードを実行すると、次の結果が得られます-

Given list : ['Mon', 'Tue', 'Mon', 9, 3, 3]
New list after duplication: [('Mon', 2)]
New list after duplication: [('Mon', 2), (3, 2)]

モードの使用

このモードは、Pythonの統計モジュールで使用できる統計関数です。最高周波数の要素を出力します。そのような要素が複数ある場合、最も高い頻度で最初に遭遇する要素が出力になります。

from statistics import mode

# Given list
listA = ['Mon', 'Tue','Mon', 9, 3, 3]
listB = [3,3,'Mon', 'Tue','Mon', 9]
print("Given listA : ",listA)
print("Given listB : ",listB)

# Adding another element for each element
Newlist1 = mode(listA)
Newlist2 = mode(listB)

# Results
print("New listA after duplication: ",Newlist1)
print("New listB after duplication: ",Newlist2)

出力

上記のコードを実行すると、次の結果が得られます-

Given listA : ['Mon', 'Tue', 'Mon', 9, 3, 3]
Given listB : [3, 3, 'Mon', 'Tue', 'Mon', 9]
New listA after duplication: Mon
New listB after duplication: 3

  1. Pythonのリストでの要素の繰り返し

    リスト内の値を繰り返す必要があるシナリオがあります。この値の重複は、Pythonで次の方法で実現できます。 ネストされたforループの使用 これは、各要素を選択し、内側のforループを通過して複製を作成し、両方を外側のforループに渡すという単純なアプローチです。 例 # Given list listA = ['Mon', 'Tue', 9, 3, 3] print("Given list : ",listA) # Adding another element for each element Newlist = [i for i i

  2. Pythonで指定された範囲の数値のリストを作成する

    Pythonは、さまざまなライブラリとメソッドを通じて、データ操作のあらゆる要件を処理できます。指定された数値のペアの間にあるすべての数値を生成する必要がある場合は、Pythonの組み込み関数と一部のライブラリを使用できます。この記事では、そのようなアプローチについて説明します。 範囲の使用 range()関数は、デフォルトで0から始まり、指定された数で終わる1ずつ増加する一連の数値を返します。必要に応じて、開始、終了、および増分ステップを呪いで変更できます。 例 def getnums(s, e,i):    return list(range(s, e,i)) #