二项分布(Binomial Distribution)
对Bernoulli试验序列的n次序列,结局A出现的次数x的概率分布服从二项分布
- 两分类变量并非一定会服从二项分布
- 模拟伯努利试验中n次独立的重复,每次试验成功的概率为pi

特征值
- 均值(数学期望)和方差:
  - 不同的值,二项式分布有着不同的形态和偏度值
  - pi值越大,呈负偏度;pi值越小,呈正偏度
  - 当 pi = 0.5时,分布是对称的
  - 当 n * pi 与 n * (1-pi) >= 5 时,样本比例p的抽样分布趋向于正态分布
- 当 n 较大,pi不太极端时,可以采用正态近似方法计算概率分布规律

应用

- 博彩行业的规则设定
- 正常值范围的设定(例:医疗行业)

# 对二项分布概念的理解及计算

 # 对二项分布概念的理解及计算

 from scipy.stats import binom

 pi = .3; n = 10
k = 2; m = 8 # 求成功次数为i的概率
pk = 0
for i in range(n):
p = binom( n, pi ).pmf( i )
if i <= k:
pk += p
print( 'P(x = {0:d}) = {1:.4f}'.format( i , p )) # 求成功小于k次的概率
print('-'*20)
p = binom( n, pi ).cdf( k )
print( 'P(x <= {0:d}) = {1:.4f}'.format( k , p ))
print( '比较累加值:', pk) # 求成功大于k次,小于m次的概率
print('-'*20)
p = binom( n, pi ).cdf( m ) - binom( n, pi ).cdf( k )
print( 'P({0:d} < x <= {1:d}) = {2:.4f}'.format( k , m, p ))

运行结果:

# 比较:p对结果的影响

 import numpy as np
from scipy.stats import binom
import matplotlib.pyplot as plt num_trials = 60
x = np.arange(num_trials) plt.plot(x, binom(num_trials, 0.2).pmf(x), 'o-', label='p=0.2')
plt.plot(x, binom(num_trials, 0.5).pmf(x), 'o-', label='p=0.5')
plt.plot(x, binom(num_trials, 0.7).pmf(x), 'o-', label='p=0.7')
plt.legend()
plt.title( '二项分布:p对结果的影响' )
plt.show()
print('当p不同时,成功m次的能性的最大值都出现在均值处,对应概率为n*p')

结果:

# 比较:n对结果的影响

 import numpy as np
from scipy.stats import binom
import matplotlib.pyplot as plt n1 = 10
n2 = 15
n3 = 20
p = 0.5
x = np.arange( max([n1,n2,n3])+1 ) plt.plot( x, binom.pmf( x, p = 0.5, n = n1), 'o-', label='n=10')
plt.plot( x, binom.pmf( x, p = 0.5, n = n2), 'o-', label='n=15')
plt.plot( x, binom.pmf( x, p = 0.5, n = n3), 'o-', label='n=20')
plt.legend()
plt.title( '二项分布:n对结果的影响' )
plt.show()
print('当N不同时,成功m次的可能性的最大值都出现在均值处,对应概率为n*p。')

结果:

用Python学分析 - 二项分布的更多相关文章

  1. 用Python学分析 - 单因素方差分析

    单因素方差分析(One-Way Analysis of Variance) 判断控制变量是否对观测变量产生了显著影响 分析步骤 1. 建立检验假设 - H0:不同因子水平间的均值无差异 - H1:不同 ...

  2. 用Python学分析:集中与分散

    散点图进阶,结合箱体图与直方图对数据形成全面的认识 描述数据集中趋势的分析量: 均值 - 全部数据的算术平均值 众数 - 一组数据中出现次数最多的变量值 中位数 - 一组数据经过顺序排列后处于中间位置 ...

  3. 用Python学分析 - t分布

    1. t分布形状类似于标准正态分布2.  t分布是对称分布,较正态分布离散度强,密度曲线较标准正态分布密度曲线更扁平3.  对于大型样本,t-值与z-值之间的差别很小 作用- t分布纠正了未知的真实标 ...

  4. 用Python学分析 - 正态分布

    正态分布(Normal Distribution) 1.正态分布是一种连续分布,其函数可以在实线上的任何地方取值. 2.正态分布由两个参数描述:分布的平均值μ和方差σ2 . 3.正态分布的取值可以从负 ...

  5. 用Python学分析 - 散点图

    # 运用散点图对数据分布得到直观的认识 import numpy as np import matplotlib.pyplot as plt # 设计 x, y 轴 n = 10000 x = np. ...

  6. 《用 Python 学微积分》笔记 3

    <用 Python 学微积分>原文见参考资料 1. 16.优化 用一个给定边长 4 的正方形来折一个没有盖的纸盒,设纸盒的底部边长为 l,则纸盒的高为 (4-l)/2,那么纸盒的体积为: ...

  7. 《用 Python 学微积分》笔记 2

    <用 Python 学微积分>原文见参考资料 1. 13.大 O 记法 比较两个函数时,我们会想知道,随着输入值 x 的增长或减小,两个函数的输出值增长或减小的速度究竟谁快谁慢.通过绘制函 ...

  8. Python学到什么程度就可以去找工作?掌握这4点足够了!

    大家在学习Python的时候,有人会问“Python要学到什么程度才能出去找工作”,对于在Python培训机构学习Python的同学来说这都不是问题,因为按照Python课程大纲来,一般都不会有什么问 ...

  9. Python学到什么程度才可以去找工作?掌握这4点足够了!

    大家在学习Python的时候,有人会问"Python要学到什么程度才能出去找工作",对于在Python培训机构学习Python的同学来说这都不是问题,因为按照Python课程大纲来 ...

随机推荐

  1. Linux下编译安装BOOST

    linux平台下要编译安装除gcc和gcc-c++之外,还需要两个开发库:bzip2-devel 和python-devel,因此在安装前应该先保证这两个库已经安装: #yum install gcc ...

  2. 移动端调试技巧(禁止webviuew,inspect等)

    如果由于某种原因(天朝FQ),不能支持google 的 inspect  调试 或者再想在某个APP里面调试你的页面,但是没有打开APP的webview ,也不能授权调试 在或者,Fider 可以拦截 ...

  3. eclipse更新time out的问题

    因为网络等诸方面的原因,中国国内访问download.eclipse.org非常慢,更新往往都会失败,简单解决的是从eclipse官网下载镜像列表中选一个中国镜像设为更新站点,当然这个镜像的选择,需要 ...

  4. Using SSH and SFTP in Mac OS X

    http://answers.stat.ucla.edu/groups/answers/wiki/7a848/ SH and SFTP are command line applications av ...

  5. git 使用简易指南

  6. SOFA 源码分析 —— 服务引用过程

    前言 在前面的 SOFA 源码分析 -- 服务发布过程 文章中,我们分析了 SOFA 的服务发布过程,一个完整的 RPC 除了发布服务,当然还需要引用服务. So,今天就一起来看看 SOFA 是如何引 ...

  7. vs2015 key

    vs2015 企业版 专业版 密钥   亲测可用 专业版:HMGNV-WCYXV-X7G9W-YCX63-B98R2企业版:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV

  8. 国内各大支付平台的API地址

    1丶目前国内最火的支付平台--蚂蚁金服开放平台(支付宝) https://open.alipay.com/platform/home.htm 2丶国内游戏帝国--腾讯(微信支付) https://pa ...

  9. Python《学习手册:第二章-习题》

    什么是Python解释器? Python解释器是运行Python程序的程序. 什么是源代码? 源代码是为程序所写的语句:它包括文本文件(通常以.py为文件名结尾)的文件. 什么是字节码? 字节码是Py ...

  10. 对于spring中事务@Transactional注解的理解

    现在spring的配置都喜欢用注解,这边就说下@Transactional 一.如何开启@Transactional支持 要使用@Transactional,spring的配置文件applicatio ...