1. 程式人生 > 程式設計 >Python統計分析模組statistics用法示例

Python統計分析模組statistics用法示例

本文例項講述了Python統計分析模組statistics用法。分享給大家供大家參考,具體如下:

一 計算平均數函式mean()

>>>import statistics
>>> statistics.mean([1,2,3,4,5,6,7,8,9])#使用整數列表做引數
5
>>> statistics.mean(range(1,10))#使用range物件做引數
5
>>>import fractions
>>> x =[(3,7),(1,21),(5,3),3)]
>>> y =[fractions.Fraction(*item)for item in x]
>>> y
[Fraction(3,Fraction(1,Fraction(5,3)]
>>> statistics.mean(y)#使用包含分數的列表做引數
Fraction(13,21)
>>>import decimal
>>> x =('0.5','0.75','0.625','0.375')
>>> y = map(decimal.Decimal,x)
>>> statistics.mean(y)
Decimal('0.5625')

二 中位數函式median()、median_low()、median_high()、median_grouped()

>>> statistics.median([1,7])#偶數個樣本時取中間兩個數的平均數
4.0
>>> statistics.median_low([1,7])#偶數個樣本時取中間兩個數的較小者
3
>>> statistics.median_high([1,7])#偶數個樣本時取中間兩個數的較大者
5
>>> statistics.median(range(1,10))
5
>>> statistics.median_low([5,7]),statistics.median_high([5,7])
(5,5)
>>> statistics.median_grouped([5,7])
5.0
>>> statistics.median_grouped([52,52,53,54])
52.5
>>> statistics.median_grouped([1,7])
3.25
>>> statistics.median_grouped([1,5])
3.7
>>> statistics.median_grouped([1,5],interval=2)
3.4

三 返回最常見資料或出現次數最多的資料(most common data)的函式mode()

>>> statistics.mode([1,7])#無法確定出現次數最多的唯一元素
Traceback(most recent call last):
File"<pyshell#27>",line 1,in<module>
statistics.mode([1,7])#無法確定出現次數最多的唯一元素
File"D:\Python36\lib\statistics.py",line 507,in mode
'no unique mode; found %d equally common values'% len(table)
statistics.StatisticsError: no unique mode; found 4 equally common values
>>> statistics.mode([1,3])
3
>>> statistics.mode(["red","blue","red","green","red"])
'red'

四 pstdev(),返回總體標準差(population standard deviation ,the square root of the population variance)

>>> statistics.pstdev([1.5,2.5,2.75,3.25,4.75])
0.986893273527251
>>> statistics.pstdev(range(20))
5.766281297335398

五 pvariance(),返回總體方差(population variance)或二次矩(second moment)

>>> statistics.pvariance([1.5,4.75])
0.9739583333333334
>>> x =[1,10,9,6]
>>> mu = statistics.mean(x)
>>> mu
5.5
>>> statistics.pvariance([1,6],mu)
8.25
>>> statistics.pvariance(range(20))
33.25
>>> statistics.pvariance((random.randint(1,10000)for i in range(30)))
>>>import random
>>> statistics.pvariance((random.randint(1,10000)for i in range(30)))
7117280.4

更多關於Python相關內容感興趣的讀者可檢視本站專題:《Python數學運算技巧總結》、《Python資料結構與演算法教程》、《Python函式使用技巧總結》、《Python字串操作技巧彙總》及《Python入門與進階經典教程》

希望本文所述對大家Python程式設計有所幫助。