Python教程-Python中的众数
 
            
            统计学中众数的介绍
在统计学中,一组给定数据值中出现次数最多的值被称为众数。换句话说,具有较高频率或重复出现的数字或值被称为众数或众数值。众数是中心趋势的三个测量之一,另外两个是均值和中位数。
例如 -
我们有一个集合A = {4, 5, 6, 6, 7, 8, 9}。由于数字6具有较高的频率,因此集合A的众数是6。因此,对于有限数量的观察来说,找到众数是很容易的。一组数据值可能具有一个模态值、多个模态值或根本没有众数。连续概率分布的众数通常被认为是任何值x。其概率密度函数具有最大局部值,因此任何峰值都是众数。
Python中的mode()函数
在处理统计数据和与大范围数据值集合交互时,Python成为了一种非常强大的编程语言。Python提供了statistics模块,其中包含许多用于处理大型数据集的函数,其中之一就是mode()函数。mode()函数用于返回所提供数据集中的中心数据点的强健度量。
mode()函数是Python编程语言标准statistics库中唯一适用于非数值(标称)数据的函数。
让我们看一下Python中mode函数的语法。
语法:
mode()函数的语法如下所示:
statistics.mode(data)Python中mode()函数的参数
mode()函数的参数是data,它可以是可迭代或序列,例如列表、元组等等。
注意:如果data参数为空,mode()函数将引发StatisticsError。
Python中mode()函数的返回值
mode()函数将根据参数中提供的数据计算后返回一个浮点数或非数值(标称)值,例如列表、元组等等。
让我们根据Python编程语言标准statistics库中mode()函数的示例考虑一些示例。
示例1:查找下面数据集的众数:
# importing the statistics library  
import statistics  
  
# creating the data set  
my_set = [10, 20, 30, 30, 40, 40, 40, 50, 50, 60]  
  
# estimating the mode of the given set  
my_mode = statistics.mode( my_set)  
  
# printing the estimated mode to the users    
print("Mode of given set of data values is", my_mode)输出:
Mode of given set of data values is 40解释:
在上面的示例中,我们导入了statistics库并创建了一个名为my_set的集合。然后,我们使用statistics.mode()函数估算了给定集合的众数,并将其值打印给用户。结果是成功打印了集合中频率最高的值。
示例2:演示mode()函数在不同类型的数据上的工作方式。
# importing the statistics library  
import statistics  
# importing the fractions module  
from fractions import Fraction as fr  
  
# creating the tuple of positive integer numbers  
data_1 = (20, 30, 30, 40, 50, 50, 50, 60, 70, 70)  
  
# creating the tuple of floating point values  
data_2 = (1.2, 2.3, 2.3, 3.4, 4.5, 4.5, 4.5, 5.6, 5.6, 7.8)  
  
# creating the tuple of fractional numbers  
data_3 = (fr(1,3), fr(1,5), fr(1,5), fr(2,3), fr(3,4), fr(8,9))  
  
# creating the tuple of negative integer numbers  
data_4 = (-9, -8, -7, -7, -7, -6, -5, -5, -4, -2)  
  
# creating the tuple of strings  
data_5 = ("apple", "mango", "mango", "mango", "banana", "guava", "guava")  
  
# estimating the mode of the given datasets  
mode_1 = statistics.mode( data_1)  
mode_2 = statistics.mode( data_2)  
mode_3 = statistics.mode( data_3)  
mode_4 = statistics.mode( data_4)  
mode_5 = statistics.mode( data_5)  
  
# printing the estimated modes to the users    
print("1. Mode of First Data set is", mode_1)  
print("2. Mode of Second Data set is", mode_2)  
print("3. Mode of Third Data set is", mode_3)  
print("4. Mode of Forth Data set is", mode_4)  
print("5. Mode of Fifth Data set is", mode_5)  输出:
1. Mode of First Data set is 50
2. Mode of Second Data set is 4.5
3. Mode of Third Data set is 1/5
4. Mode of Forth Data set is -7
5. Mode of Fifth Data set is mango解释:
在上面的示例中,我们导入了statistics库和fractions模块。然后,我们创建了不同类型的元组,以检查mode()函数是否适用于各种数据类型。我们创建了一个正整数、浮点值、分数、负整数和字符串的元组。然后,我们使用statistics.mode()函数计算了每个数据集的众数。然后,我们将这些估算值打印给用户。
mode()函数的一些应用
mode()函数通常在金融领域中使用,以比较价格和与先前记录的值。它还有助于从价格分布集合中计算和预测未来可能的价格。mode()函数通常不单独使用,而是与统计的另外两个测量值——均值和中位数——一起使用。这三者一起作为强大的工具,可以揭示数据的许多方面。
 
          
          
         