python随机数据随概率分布_概率分布及其Python实现

一、学习概率分布有什么用?很多现实中的分布都来自几种概率分布。对个人生活和工作选择非常有帮助。

知道某件事发生的概率对我们作出数据分析决策很有帮助。有时候计算概率很简单,有时候计算概率很复杂,概率分布是帮助我们解决特定问题下的万能模版。

在经济学习领域,概率分布对于数据的认识有非常重要的作用,不管是有效数据还是噪音数据,如果知道了数据集分布,在机器学习算法选择和建模过程有很大帮助。

二、概率分布

1.理解概率分布之前需要了解的概念

1)随机事件

在统计概率中我们用事件表示某件事情。

在一定条件下,可能发生可能不发生的事件叫随机事件。如抛硬币。

2)如何量化随机事件——随机变量

随机变量:是一个量化随机事件的函数,它将随机事件每个可能出现的结果赋予一个数字。数字是随机的,可以取任何一个值。如抛硬币:正面朝上用1表示,反面朝上用0表示。通常用X表示。

随机变量有两种类型:离散随机变量和连续随机变量

离散随机变量可能出现的结果都是可以列出来的,如抛硬币,可能出现两种结果,正面朝上1,反面朝上0。

连续随机变量中变量有无限个结果,如明天下雨雨量的毫米数。

将这两种随机变量分隔开,是因为他们有不同的概率分布。

2.概率分布

分布:数据在统计图中的形状叫它的分布。

概率分布:将随机变量、概率、分布组合起来的一种表现手段。就是用统计图来表示随机变量所有可能结果对应发生的概率。横轴是随机事件所有可能的结果(即随机变量的对应的数值),纵轴是对应每个结果发生的概率。

根据随机变量类型的不同,概率分布分为离散概率分布和连续概率分布。

我们可以根据概率计算公式计算这两种随机变量数字的概率。

离散概率分布计算公式用概率质量函数PMF(Probability Mass Function):之所以叫做质量,是因为离散是点,默认体积为1.

连续概率分布计算公式用概率密度函数PDF(Probability Density Function):之所以叫密度,是因为连续随机变量概率计算的是面积。

1)离散概率分布

包括伯努利分布、二项分布、几何分布、泊松分布

伯努利分布:

伯努利实验:同样的条件下进行的相互独立的实验,特点是实验的可能结果只有两种。成功/失败。如果随机变量X是一次伯努利实验,则这个随机变量就符合伯努利分布。

用概率质量函数(PMF)计算伯努利分布的概率,成功概率记作P,失败概率则为1-P。

二项分布:发生次数是固定的,感兴趣的是成功的次数。二项表示随机事件的有两种可能的结果,成功/失败。

特点:

1.做某件事的次数是固定的,次数用n表示,n次某件事是相互独立的。

2.每一次事件都有两种可能的结果,成功/失败

3.每一次成功的概率都相等,成功的概率用p表示

4.想知道成功k次的概率是多少。

二项分布的期望和方差:

期望=np (预期成功多少次)

方差=np(1-p)(数据波动大小)

几何分布:想要知道尝试某件事情多次能取得第一次成功的概率。(二项分布的孪生兄弟)

特点:

1.做某件事的次数是固定的,次数用n表示,n次某件事是相互独立的。

2.每一次事件都有两种可能的结果,成功/失败

3.每一次成功的概率都相等,成功的概率用p表示

4.想知道第k次做某件事,才取得第1次成功的概率是多少。

几何分布的期望和方差:

期望E=1/p (预期多少次后取得第1次成功)

方差=(1-p)/p的平方 (数据波动大小)

泊松分布:某个时间范围内,发生某件事情k次的概率有多大。(如一天内中奖的次数,一个月内机器发生故障的次数,一段道路发生交通事故的次数)

泊松分布的形状会随着平均值的不同而有所变化。

特点:

1.事件是独立事件

2.任意相同的时间范围内,事件发生的概率相同。

3.你想知道某个时间范围内,发生某件事情k次的概率是多大。

要计算泊松分布的概率首先要知道给定时间范围内某件事情发生的平均次数。

泊松分布的期望和方差都等于平均值μ。

2)连续概率分布

包括正态分布和幂律分布

正态分布趋向中间,幂律分布趋向极端。

正态分布:数据集像一只倒扣的钟,两头低中间高,左右对称,大部分数据集中在中间的平均值,小部分在两端,例如上班的薪水。

幂律分布:在有些自然和商业现象中因为网络效应导致强者越强,赢家通吃,这时的结果会呈现出尖刀型的幂律分布。刀尖占据着大部分的财富。

如果想离财务自由更近,需要在给别人打工的同时,建立自己的幂律分布商业模式。

正态分布是商业世界中最常见的一种分布,当影响结果的因素特别多,没有哪个因素可以完全左右这个结果时,结果通常呈现正态分布。

有这两个工具就可以看清很多商业现象。

正态分布的商业现象:1)员工绩效的活力曲线 2)产品质量 3)快速找到停车位 4)智商

幂律分布商业现象:1)家庭收入 2)城市GDP

正态分布特异功能:预测数据的位置

68.2%的数据处于一个标准差内,95.5%的数据处于2个标准差内,99.7%的数据处于3个标准差内。

正态分布概率计算:

正态分布的概率是正态分布图下方一定数值范围内的面积。

1.确定概率范围,明确要求正态分布图中哪一部份的面积。

2.求对应面积的标准分。知道所在数据集的平均值和标准差,就可以算出对应的标准分。标准分就是距离平均值有几个标准差。

3.查找Z表格(标准分与概率值对应关系的表)对应的概率值 。但Z表格给出的是小于标准分的概率值,如果要求大于标准分的面积,用1减去小于标准分的概率值。

三、概率分布的Python实现

套路:

1.伯努利分布

例:抛硬币实验

抛硬币实验1次,正面朝上记作1,翻面朝上记作0。

#导入包

import scipy.stats as stats

import numpy as np

import matplotlib.pyplot as plt

#定义随机变量

X=np.arange(0,2,1)

#求各随机变量的概率

p=0.5

pList=stats.bernoulli.pmf(X,p)

#伯努利分布概率图

plt.plot(X,pList,marker='o',linestyle='None')

plt.vlines(X,0,pList)

plt.xlabel('随机变量:抛硬币1次')

plt.ylabel('概率')

plt.title('伯努利分布:p=%.2f'% p)

plt.show()

2.二项分布

例:5次抛硬币,正面朝上的次数。

#定义随机变量

n=5#抛硬币的次数

p=0.5#正面朝上的概率

X=np.arange(0,6,1)

#求各随机变量的概率

pList=stats.binom.pmf(X,n,p)

#绘图

plt.plot(X,pList,marker='o',linestyle='None')

plt.vlines(X,0,pList)

plt.xlabel('随机变量:抛硬币正面朝上次数')

plt.ylabel('概率')

plt.title('二项分布:n=%i,p=%.2f'% (n,p))

plt.show()

3.几何分布

例:首次表白成功的概率

#定义随机变量

k=5

p=0.6

X=np.arange(1,k+1,1)

#计算各随机变量的概率

pList=stats.geom.pmf(X,p)

#绘图

plt.plot(X,pList,marker='o',linestyle='None')

plt.vlines(X,0,pList)

plt.xlabel('随机变量:表白第k次才首次成功')

plt.ylabel('概率')

plt.title('几何分布:p=%.2f'% p)

plt.show()

4.泊松分布

例:已知一天内某路口平均每天发生2次事故。求该路口一天内发生4次事故的概率。

#定义随机变量

mu=2

k=4#次数,想知道一天内发生4次事故的概率,包含了发生0次,1次,2次,3次,4次

X=np.arange(0,k+1,1)

#计算概率

pList=stats.poisson.pmf(X,mu)

#绘图

plt.plot(X,pList,marker='o',linestyle='None')

plt.vlines(X,0,pList)

plt.xlabel('随机变量:某路口发生k次事故')

plt.ylabel('概率')

plt.title('泊松分布:平均值mu=%.2f'% mu)

plt.show()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值