統(tǒng)計(jì)眾數(shù)介紹
在統(tǒng)計(jì)學(xué)中,在所提供的一組數(shù)據(jù)值中更經(jīng)常出現(xiàn)的值被稱為眾數(shù)。換句話說(shuō),具有高頻率或重復(fù)出現(xiàn)的數(shù)字或值被稱為眾數(shù)或眾數(shù)值。眾數(shù)是中心趨勢(shì)的三個(gè)措施之一。另外兩個(gè)指標(biāo)分別是平均值和中位數(shù)。
例如-
我們有一套A = { 4,5,6,6,7,8,9} 。由于數(shù)字 6 的頻率較高,因此A 組的眾數(shù)為 6 。因此,對(duì)于有限數(shù)量的觀察,很容易找到眾數(shù)。一組數(shù)據(jù)值可能有一個(gè)模態(tài)值或多個(gè)模態(tài)值,或者根本沒(méi)有模態(tài)。連續(xù)概率分布的一種眾數(shù)常被稱為任意值 x,它的概率密度函數(shù)有一個(gè)最大局部值,所以任意一個(gè)峰值都是一種眾數(shù)。
Python 中的 mode()函數(shù)
Python 在處理統(tǒng)計(jì)數(shù)據(jù)和處理一組大范圍的數(shù)據(jù)值時(shí),成為了一種非常強(qiáng)大的編程語(yǔ)言。Python 為 統(tǒng)計(jì)模塊提供了許多進(jìn)程相當(dāng)大數(shù)據(jù)集的功能,而眾數(shù)()功能就是其中之一。眾數(shù)()函數(shù)用于返回給定數(shù)據(jù)集范圍內(nèi)中心數(shù)據(jù)點(diǎn)的穩(wěn)健度量。
眾數(shù)()函數(shù)是 Python 編程語(yǔ)言的標(biāo)準(zhǔn)統(tǒng)計(jì)庫(kù)中唯一可以應(yīng)用于非數(shù)值(標(biāo)稱)數(shù)據(jù)的函數(shù)。
讓我們看看 Python 中眾數(shù)函數(shù)的語(yǔ)法。
語(yǔ)法:
眾數(shù)()功能的語(yǔ)法如下所示:
statistics.mode(data)
Python 中 mode()函數(shù)的參數(shù)
眾數(shù)()功能的參數(shù)是數(shù)據(jù)。它可以是一個(gè)迭代或序列——例如,列表、元組等等。
注意:如果數(shù)據(jù)參數(shù)為空,mode()函數(shù)將引發(fā) StatisticsError。
Python 中 mode()函數(shù)的返回值
一旦在迭代器(例如,列表、元組等等)中計(jì)算了所提供數(shù)據(jù)的眾數(shù),眾數(shù)()函數(shù)將根據(jù)參數(shù)中所提供的數(shù)據(jù)返回一個(gè)浮點(diǎn)數(shù)或非數(shù)值(標(biāo)稱)值。
讓我們考慮一些基于 Python 編程語(yǔ)言的標(biāo)準(zhǔn)統(tǒng)計(jì)庫(kù)的眾數(shù)()函數(shù)的例子。
例 1:找到下面給出的數(shù)據(jù)集的眾數(shù):
# 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
說(shuō)明:
在上例中,我們導(dǎo)入了統(tǒng)計(jì)庫(kù),并創(chuàng)建了一個(gè)集合作為 my_set 。然后,我們使用 statistics.mode() 函數(shù)估計(jì)給定集合的眾數(shù),并將其值打印給用戶。結(jié)果,該組中具有最高頻率的值被成功打印。
示例 2:演示 mode()函數(shù)在不同種類的數(shù)據(jù)類型上的工作。
# 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
說(shuō)明:
在上例中,我們導(dǎo)入了統(tǒng)計(jì)庫(kù)和分?jǐn)?shù)模塊。然后,我們創(chuàng)建了一個(gè)不同范圍的元組來(lái)檢查眾數(shù)()函數(shù)是否適用于各種數(shù)據(jù)類型。我們已經(jīng)創(chuàng)建了一個(gè)由正整數(shù)、浮點(diǎn)值、小數(shù)、負(fù)整數(shù)和字符串組成的元組。然后我們使用 statistics.mode() 函數(shù)來(lái)計(jì)算每個(gè)數(shù)據(jù)集的眾數(shù)。然后,我們將這些估計(jì)值打印給用戶。
mode()函數(shù)的一些應(yīng)用
眾數(shù)()功能是一個(gè)統(tǒng)計(jì)功能,通常用于金融行業(yè),以便將價(jià)格和價(jià)值與以前的記錄進(jìn)行比較。它還有助于從價(jià)格分布集合中計(jì)算和預(yù)測(cè)未來(lái)可能的價(jià)格。眾數(shù)()功能不單獨(dú)使用;然而,除此之外還有另外兩種統(tǒng)計(jì)方法,即平均值和中位數(shù)。這三者共同作為一個(gè)強(qiáng)大的工具來(lái)揭示數(shù)據(jù)的許多方面。