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),(1,3)]
>>> y =[fractions.Fraction(*item)for item in x]
>>> y
[Fraction(3,7),Fraction(1,21),Fraction(5,3),Fraction(1,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,3,5,7])#偶数个样本时取中间两个数的平均数
4.0
>>> statistics.median_low([1,3,5,7])#偶数个样本时取中间两个数的较小者
3
>>> statistics.median_high([1,3,5,7])#偶数个样本时取中间两个数的较大者
5
>>> statistics.median(range(1,10))
5
>>> statistics.median_low([5,3,7]), statistics.median_high([5,3,7])
(5,5)
>>> statistics.median_grouped([5,3,7])
5.0
>>> statistics.median_grouped([52,52,53,54])
52.5
>>> statistics.median_grouped([1,3,3,5,7])
3.25
>>> statistics.median_grouped([1,2,2,3,4,4,4,4,4,5])
3.7
>>> statistics.median_grouped([1,2,2,3,4,4,4,4,4,5], interval=2)
3.4

三 返回最常见数据或出现次数最多的数据(most common data)的函数mode()

>>> statistics.mode([1,3,5,7])#无法确定出现次数最多的唯一元素
Traceback(most recent call last):
File"<pyshell#27>", line 1,in<module>
statistics.mode([1,3,5,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,5,7,3])
3
>>> statistics.mode(["red","blue","blue","red","green","red","red"])
'red'

四  pstdev(),返回总体标准差(population standard deviation ,the square root of the population variance)

>>> statistics.pstdev([1.5,2.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,2.5,2.5,2.75,3.25,4.75])
0.9739583333333334
>>> x =[1,2,3,4,5,10,9,8,7,6]
>>> mu = statistics.mean(x)
>>> mu
5.5
>>> statistics.pvariance([1,2,3,4,5,10,9,8,7,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程序设计有所帮助。

(0)

相关推荐

  • python统计一个文本中重复行数的方法

    本文实例讲述了python统计一个文本中重复行数的方法.分享给大家供大家参考.具体实现方法如下: 比如有下面一个文件 2 3 1 2 我们期望得到 2,2 3,1 1,1 解决问题的思路: 出现的文本作为key, 出现的数目作为value,然后按照value排除后输出 最好按照value从大到小输出出来,可以参照: 复制代码 代码如下: in recent Python 2.7, we have new OrderedDict type, which remembers the order in

  • python统计cpu利用率的方法

    本文实例讲述了python统计cpu利用率的方法.分享给大家供大家参考.具体实现方法如下: #-*-coding=utf-8-*- import win32pdh import time # Counter paths PROCESSOR_PERCENT = r'\Processor(_Total)\% Processor Time' MEMORY_PERCENT = r'\Memory\% Committed Bytes In Use' MEMORY_COMMITTED = r'\Memory

  • python实现beta分布概率密度函数的方法

    如下所示: beta分布的最大特点是其多样性, 从下图可以看出, beta分布具有各种形态, 有U形, 类似正态分布的形状, 类似uniform分布的形状等, 正式这一特质使beta分布在共轭先验的计算中起到重要作用: import matplotlib.pyplot as plt import numpy as np from scipy import stats from matplotlib import style style.use('ggplot') params = [0.5, 1

  • python数据结构之二叉树的统计与转换实例

    一.获取二叉树的深度 就是二叉树最后的层次,如下图: 实现代码: 复制代码 代码如下: def getheight(self):        ''' 获取二叉树深度 '''        return self.__get_tree_height(self.root) def __get_tree_height(self, root):        if root is 0:            return 0        if root.left is 0 and root.righ

  • python实现简单中文词频统计示例

    本文介绍了python实现简单中文词频统计示例,分享给大家,具体如下: 任务 简单统计一个小说中哪些个汉字出现的频率最高 知识点 1.文件操作 2.字典 3.排序 4.lambda 代码 import codecs import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 mpl.rcParams['axes.unicode_minus

  • Python统计列表中的重复项出现的次数的方法

    本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴.具体方法如下: 对一个列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],现在我们需要统计这个列表里的重复项,并且重复了几次也要统计出来. 方法1: mylist = [1,2,2,2,2,3,3,3,4,4,4,4] myset = set(mylist) #myset是另外一个列表,里面的内容是mylist里面的无重复 项 for item in myset: prin

  • Python中统计函数运行耗时的方法

    本文实例讲述了Python中统计函数运行耗时的方法.分享给大家供大家参考.具体实现方法如下: import time def time_me(fn): def _wrapper(*args, **kwargs): start = time.clock() fn(*args, **kwargs) print "%s cost %s second"%(fn.__name__, time.clock() - start) return _wrapper #这个装饰器可以在方便地统计函数运行的

  • Python实现对excel文件列表值进行统计的方法

    本文实例讲述了Python实现对excel文件列表值进行统计的方法.分享给大家供大家参考.具体如下: #!/usr/bin/env python #coding=gbk #此PY用来统计一个execl文件中的特定一列的值的分类 import win32com.client filename=raw_input("请输入要统计文件的详细地址:") flag=0 #用于判断文件 名如果不带'日'就为 0 if '\xc8\xd5' in filename:flag=1 print 50*'

  • Python实现的概率分布运算操作示例

    本文实例讲述了Python实现的概率分布运算操作.分享给大家供大家参考,具体如下: 1. 二项分布(离散) import numpy as np from scipy import stats import matplotlib.pyplot as plt ''' # 二项分布 (binomial distribution) # 前提:独立重复试验.有放回.只有两个结果 # 二项分布指出,随机一次试验出现事件A的概率如果为p,那么在重复n次试验中出现k次事件A的概率为: # f(n,k,p) =

  • python高斯分布概率密度函数的使用详解

    如下所示: import matplotlib.pyplot as plt import numpy as np from scipy import stats from matplotlib import style style.use('fivethirtyeight') mu_params = [-1, 0, 1] sd_params = [0.5, 1, 1.5] x = np.linspace(-7, 7, 100) f, ax = plt.subplots(len(mu_params

  • 用Python中的字典来处理索引统计的方法

    最近折腾索引引擎以及数据统计方面的工作比较多, 与 Python 字典频繁打交道, 至此整理一份此方面 API 的用法与坑法备案. 索引引擎的基本工作原理便是倒排索引, 即将一个文档所包含的文字反过来映射至文档; 这方面算法并没有太多花样可言, 为了增加效率, 索引数据尽可往内存里面搬, 此法可效王献之习书法之势, 只要把十八台机器内存全部塞满, 那么基本也就功成名就了. 而基本思路举个简单例子, 现在有以下文档 (分词已经完成) 以及其包含的关键词 doc_a: [word_w, word_x

  • Python实现统计单词出现的个数

    最近在看python脚本语言,脚本语言是一种解释性的语言,不需要编译,可以直接用,由解释器来负责解释.python语言很强大,而且写起来很简洁.下面的一个例子就是用python统计单词出现的个数. import sys import string #import collections if len(sys.argv) == 1 or sys.argv[1] in {"-h", "--help"}: print("usage: uniqueword fil

随机推荐