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

ライブラリを使用せずにPythonで平均、中央値、最頻値を見つける


平均、中央値、最頻値は、データ分析で非常に頻繁に使用される統計関数です。いくつかのPythonライブラリがありますが。

平均を見つける

数のリストの平均は、数の平均とも呼ばれます。それは、すべての数の合計を取り、それを数の数で割ることによって見つけられます。次の例では、sum()関数を適用して数値の合計を取得し、thelen()関数を適用して数値の数を取得します。

num_list = [21, 11, 19, 3,11,5]
# FInd sum of the numbers
num_sum = sum(num_list)
#divide the sum with length of the list
mean = num_sum / len(num_list)
print(num_list)
print("Mean of the above list of numbers is: " + str(round(mean,2)))

出力

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

[21, 11, 19, 3, 11, 5]
Mean of the above list of numbers is: 11.67

中央値の検索

中央値は、数値リストの真ん中の値です。リストに奇数の数がある場合は、失われた数を並べ替えて、真ん中の値を選択します。カウントが偶数の場合、真ん中の2つの値を選択し、それらの平均を中央値とします。

num_list = [21, 13, 19, 3,11,5]
# Sort the list
num_list.sort()
# Finding the position of the median
if len(num_list) % 2 == 0:
   first_median = num_list[len(num_list) // 2]
   second_median = num_list[len(num_list) // 2 - 1]
   median = (first_median + second_median) / 2
else:
   median = num_list[len(num_list) // 2]
print(num_list)
print("Median of above list is: " + str(median))

出力

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

[3, 5, 11, 13, 19, 21]
Median of above list is: 12.0

検索モード

モードは、リスト内で最も頻繁に発生する番号です。リストにある各番号の頻度を見つけて、頻度が最も高いものを選択することで計算します。

import collections
# list of elements to calculate mode
num_list = [21, 13, 19, 13,19,13]

# Print the list
print(num_list)

# calculate the frequency of each item
data = collections.Counter(num_list)
data_list = dict(data)

# Print the items with frequency
print(data_list)

# Find the highest frequency
max_value = max(list(data.values()))
mode_val = [num for num, freq in data_list.items() if freq == max_value]
if len(mode_val) == len(num_list):
   print("No mode in the list")
else:
   print("The Mode of the list is : " + ', '.join(map(str, mode_val)))

出力

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

[21, 13, 19, 13, 19, 13]
{21: 1, 13: 3, 19: 2}
The Mode of the list is : 13

  1. Pythonでリスト内の要素の相対的な順序を見つける

    要素が整数であるリストが与えられます。相対的な順序を見つける必要があります。つまり、昇順で並べ替えられている場合は、それらの位置のインデックスを見つける必要があります。 並べ替えとインデックス付き 最初にリスト全体を並べ替え、並べ替え後に各リストのインデックスを見つけます。 例 listA = [78, 14, 0, 11] # printing original list print("Given list is : \n",listA) # using sorted() and index() res = [sorted(listA).index(i) for i i

  2. Pythonのタプルのリストで頻度を見つける

    Pythonでは、さまざまな種類のデータコンテナが混同される可能性があります。リストには、それぞれがタプルである要素を含めることができます。この記事では、そのようなリストを取得し、それ自体がリストの要素であるタプル内の要素の頻度を見つけます。 カウントとマップの使用 ラムダ関数を適用して、リストに存在するタプルの最初の要素をそれぞれカウントします。次に、マップ関数を適用して、検索している要素の総数を求めます。 例 # initializing list of tuples listA = [('Apple', 'Mon'), ('Banana'