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

Pythonで配列内のすべての要素の頻度をカウントします


このチュートリアルでは、配列内のすべての要素の頻度を検出するプログラムを作成します。さまざまな方法で見つけることができます。そのうちの2つを調べてみましょう。

dictの使用

  • アレイを初期化します。

  • 空のdictを初期化します 。

  • リストを繰り返し処理します。

    • 要素がdictにない場合は、値を 1に設定します 。

    • それ以外の場合は、値を 1インクリメントします 。

  • dictを反復処理して、要素と頻度を印刷します。

コードを見てみましょう。

# intializing the list
arr = [1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3]
# initializing dict to store frequency of each element
elements_count = {}
# iterating over the elements for frequency
for element in arr:
   # checking whether it is in the dict or not
   if element in elements_count:
      # incerementing the count by 1
      elements_count[element] += 1
   else:
      # setting the count to 1
      elements_count[element] = 1
# printing the elements frequencies
for key, value in elements_count.items():
   print(f"{key}: {value}")

出力

上記のプログラムを実行すると、次の結果が得られます。

1: 3
2: 4
3: 5

コレクションモジュールのCounterクラスを使用した2番目のアプローチを見てみましょう。

Counterクラスの使用

  • コレクションをインポートします モジュール。

  • アレイを初期化します。

  • リストをカウンターに渡します クラス。そして、結果を変数に格納します。

  • 結果を反復処理して、要素と頻度を印刷します。

以下のコードを参照してください。

# importing the collections module
import collections
# intializing the arr
arr = [1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3]
# getting the elements frequencies using Counter class
elements_count = collections.Counter(arr)
# printing the element and the frequency
for key, value in elements_count.items():
   print(f"{key}: {value}")

出力

上記のコードを実行すると、前のコードと同じ出力が得られます。

1: 3
2: 4
3: 5

結論

チュートリアルで疑問がある場合は、コメントセクションでそれらについて言及してください。


  1. 配列内の反転をカウントするPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −リストが表示されます。必要な反転をカウントして表示する必要があります。 反転カウントは、配列をソートするために必要なステップ数をカウントすることによって取得されます。 次に、以下の実装のソリューションを見てみましょう- 例 # count def InvCount(arr, n):    inv_count = 0    for i in range(n):       for j in range(i + 1, n):  

  2. 指定された整数配列のすべての個別の要素を出力するPythonプログラム。

    与えられた整数配列。配列の要素が重複している可能性があります。私たちのタスクは、個別の値を表示することです。 例 Input::A=[1,2,3,4,2,3,5,6] Output [1,2,3,4,5,6] アルゴリズム Step 1: input Array element. Step 2: Then pick all the elements one by one. Step 3: then check if the picked element is already displayed or not. Step 4: use one flag variable which i