1. 程式人生 > 程式設計 >詳解python statistics模組及函式用法

詳解python statistics模組及函式用法

本節介紹 Python 中的另一個常用模組 —— statistics模組,該模組提供了用於計算數字資料的數理統計量的函式。它包含了很多函式,具體如下表:

名稱 描述
mean() 資料的算術平均數(“平均數”)
harmonic_mean() 資料的調和均值
median() 資料的中位數(中間值)
median_low() 資料的低中位數
median_high() 資料的高中位數
median_grouped() 分組資料的中位數,即第50個百分點
mode() 離散的或標稱的資料的單模

mean(data)函式

mean(data) 函式用於計算一組數字的平均值,引數 data 可以是多種形式的,比如 int 型陣列或 decimal 型陣列等。舉例說明函式的具體用法:

>>> statistics.mean([1,2,3,4,5])
3
>>> from fractions import Fraction as F
>>> statistics.mean([F(4,7),F(4,21),F(5,4),F(1,4)])
Fraction(95,168)
>>> from decimal import Decimal as D
>>> statistics.mean([D("0.5"),D("0.78"),D("0.88"),D("0.988")])
Decimal('0.787')

harmonic_mean(data)函式

調和平均數又稱倒數平均數,是平均數的一種。harmonic_mean(data) 函式用於求調和平均數,是總體各統計變數倒數的算術平均數的倒數。例如:

>>> statistics.harmonic_mean([4,5,7])
5.0602409638554215

median(data)函式

median(data) 函式用於計算一組資料的中值。如果資料的個數是單數,則中值是中間的數;如果資料的個數是複數,則中值是中間兩個數的平均數。例如:

>>> statistics.median([1,7])
4
>>> statistics.median([1,7,10])
5.5
median_low(data)函式
median_low(data) 函式用於計算一組資料的中小值。如果資料的個數是單數,則中小值是中間的數;如果資料的個數是複數,則中小值是中間兩個數中最小的數。例如:
>>> statistics.median_low([1,7])
4
>>> statistics.median_low([1,10])
4

median_high(data)函式

median_high(data) 函式用於計算一組資料的中大值。如果資料的個數是單數,則中大值是中間的數;如果資料的個數是複數,則中大值是中間兩個數中最大的數。例如:

>>> statistics.median_high([1,7])
4
>>> statistics.median_high([1,10])
7
median_grouped(data,interval=1)函式
median_grouped(data,interval=1) 函式用於計算分組連續資料的中位數。其中 interval 表示資料之間的間隔,即組距。此函式計算方法較複雜,可參考公式 中位數=中位數所在組下限+{[(樣本總數/2-到中位數所在組下限的累加次數)/中位數所在組的次數]*中位數的組距},如果資料是空的會報 StatisticsError 錯誤。例如:
>>> statistics.median_grouped([1,5])
3.7
>>> statistics.median_grouped([3,6],interval=1)
4.25
>>> statistics.median_grouped([1,7],interval=2)
4.5

示例說明:

[1,5]中位數在4這個分組裡面

預設組距為1

所在分組的下限為3.5

樣本總數為10

4分組裡有5個數

小於3.5的有4個數

所以中位數為:3.5+(10/2-4)/5*1=3.5+1/5=3.7

mode(data)函式

mode(data) 函式用於計算一組資料的眾數,即在資料中出現次數最多的數。例如:

>>> statistics.mode([1,1,4])
3
>>> statistics.mode(["red","blue","green","red"])
'blue'

總結

本節給大家介紹了 Python 中 statistics 模組的常用操作,在實際開發中方便對資料進行靈活的處理,對於實現資料統計的功能提供了支撐。

示例程式碼:Python-100-days-day043

以上所述是小編給大家介紹的詳解python statistics模組及函式用法,希望對大家有所幫助!