1.泊松分布

def poisson(k,Lambda):
    # 定义当变量服从泊松分布时计算概率的一个函数
    # K:表示随机事件发生的次数
    # Lambda:表示单位时间内随机事件的平均发生次数
    from math import exp,factorial 
    P = pow(Lambda,k)*exp(-Lambda)/factorial(k)   #计算服从泊松分布的概率因子
    #  求Lambda的k次方
    return P

2.保险收益预测模型

# 保险收益预测模型

n = 10000      #预期投保人数
prob = 0.004   #每位投保人需要理赔的概率
premium = 100  #每位投保人支付的每年保费
cost = 20000   #保险公司给每位符合理赔要求的投保人支付理赔款金额

L = n*prob     #计算得到Lambda数值(即一年内需要理赔的平均人数)
K_breakeven = n*premium/cost    #实现盈亏平衡时的k

prob_breakeven = poisson(k = K_breakeven,Lambda=L)   #恰好实现盈亏平衡时的概率
print('M公司新保险产品恰好盈亏平衡的概率:',round(prob_breakeven,6))

Python如何对数据计算概率 用python算概率_概率论

3.保险公司实现盈利的可能

import math
prob_list = []       #创建一个放置概率值的初始空列表
K_breakeven = math.trunc(K_breakeven)    #取整数

for i in range(K_breakeven):    #依次取小于盈亏平衡时k值的自然数
    P = poisson(k=i,Lambda=L)   #计算概率
    prob_list.append(P)

prob_profit = math.fsum(prob_list)   #将列表中的元素进行加总
print('M公司新保险产品实现盈利的概率',round(prob_profit,6))

Python如何对数据计算概率 用python算概率_python_02

4.详细分析

公众号 yk 坤帝
后台回复 泊松分布 获取全部源代码
# 泊松分布

def poisson(k,Lambda):
    # 定义当变量服从泊松分布时计算概率的一个函数
    # K:表示随机事件发生的次数
    # Lambda:表示单位时间内随机事件的平均发生次数
    from math import exp,factorial 
    P = pow(Lambda,k)*exp(-Lambda)/factorial(k)   #计算服从泊松分布的概率因子
    #  求Lambda的k次方
    return P

# 保险收益预测模型

n = 10000      #预期投保人数
prob = 0.004   #每位投保人需要理赔的概率
premium = 100  #每位投保人支付的每年保费
cost = 20000   #保险公司给每位符合理赔要求的投保人支付理赔款金额

L = n*prob     #计算得到Lambda数值(即一年内需要理赔的平均人数)
K_breakeven = n*premium/cost    #实现盈亏平衡时的k

prob_breakeven = poisson(k = K_breakeven,Lambda=L)   #恰好实现盈亏平衡时的概率
print('M公司新保险产品恰好盈亏平衡的概率:',round(prob_breakeven,6))


# 保险公司实现盈利的可能

import math
prob_list = []       #创建一个放置概率值的初始空列表
K_breakeven = math.trunc(K_breakeven)    #取整数

for i in range(K_breakeven):    #依次取小于盈亏平衡时k值的自然数
    P = poisson(k=i,Lambda=L)   #计算概率
    prob_list.append(P)

prob_profit = math.fsum(prob_list)   #将列表中的元素进行加总
print('M公司新保险产品实现盈利的概率',round(prob_profit,6))