- numpy.random.binomial(n,p,size):产生size个符合(n,p)的二项分布随机数
即,相当于进行size次实验,每次实验都投掷n枚硬币/每次实验都将一枚硬币投掷n次,记录size次实验中,正面朝上分别为0-n次的实验次数;其中每次试验的成功概率为p
1. 固定n值,对比p和size不同值的不同结果
'''绘制二项分布的概率质量函数,使用不同参数展示'''
import matplotlib.pyplot as ply
import numpy as np
# 产生二项分布的随机数并制作成直方图
def plot_binomial(n,p,size):
sample = np.random.binomial(n,p,size)
# 绘制直方图,设置标题和坐标
n,edgebin,patch=plt.hist(sample, bins=n, rwidth=0.6)
plt.title('Binomial PMF with n={}, p={},size={}'.format(n,p,size))
plt.xlabel('number of successes')
plt.ylabel('probability')
# 打印n和bins的取值范围
print("edgebin = {}".format(edgebin))
print("size number in bins = {}".format(n))
# 制作四组不同参数输入的结果图对比
def difference_p_and_size():
plt.figure(figsize=(12,10))
ax=plt.subplot(221)
plot_binomial(10, 0.5,10000)