NumPy 二项分布
二项分布(Binomial Distribution)
二项式分布是一种离散分布。
它描述了二进制场景的结果,例如抛硬币,要么是正面,要么是反面。
它有三个参数:
n
- 试验次数。p
- 每次试验发生的概率(例如,掷硬币每次为0.5)。size
- 返回数组的形状。
离散分布:分布是在单独的事件集上定义的,例如抛硬币的结果是离散的,因为它只能是正面或反面,而人的身高是连续的,因为它可以是 170、170.1、170.11 等。
实例
给定 10 次抛硬币试验,生成 10 个数据点:
from numpy import random x = random.binomial(n=10, p=0.5, size=10) print(x)
二项式分布的可视化
实例
from numpy import random import matplotlib.pyplot as plt import seaborn as sns sns.displot(random.binomial(n=10, p=0.5, size=1000)) plt.show()
结果

正态分布和二项分布之间的差异
主要区别在于,正态分布是连续的,而二项分布是离散的,但如果有足够的数据点,它将与具有特定位置和尺度的正态分布非常相似。
实例
from numpy import random import matplotlib.pyplot as plt import seaborn as sns data = { "normal": random.normal(loc=50, scale=5, size=1000), "binomial": random.binomial(n=100, p=0.5, size=1000) } sns.displot(data, kind="kde") plt.show()
结果
