在 Python 中无需库查找平均值、中位数和众数
平均值、中位数和众数在数据分析中是非常常用的统计函数。尽管有一些 Python 库。
查找平均值
数字列表的平均值也称为数字的平均值。它是通过将所有数字的总和除以数字的个数来找到的。在下面的示例中,我们应用 sum() 函数来获取数字的总和,并应用 len() 函数来获取数字的个数。
示例
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
查找中位数
中位数是数字列表中最中间的值。如果列表中数字的个数是奇数,那么我们对列表进行排序并选择最中间的值。如果个数是偶数,那么我们选择两个最中间的值并取它们的平均值作为中位数。
示例
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
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP