请求解释数据科学课程中指数分布相关Python代码的各步骤含义
代码逐行解析:指数分布抽样与可视化
首先贴出完整代码:
X = stats.expon(scale=10) xs = X.rvs(100000) plt.figure(figsize=(10, 4)) plt.hist(xs, bins=100, color="navy") plt.xlim(0, 80);
逐行拆解核心逻辑:
第1行:
X = stats.expon(scale=10)
这里的stats是scipy.stats库的简写,expon对应指数分布类。这行是创建一个均值为10的指数分布模型实例——指数分布的尺度参数scale就等于它的均值,所以直接用scale=10定义了我们要抽样的目标分布。第2行:
xs = X.rvs(100000)rvs是“随机变量样本(random variates)”的缩写,这行从刚才定义的指数分布里,一次性生成10万个独立随机样本,并把这些样本存入xs变量。样本量越大,后续画的直方图就越贴近真实的指数分布形状。第3行:
plt.figure(figsize=(10, 4))plt是matplotlib.pyplot库的简写,这行创建一个新的绘图窗口,figsize=(10,4)指定窗口宽10英寸、高4英寸,用来控制图表的整体尺寸,避免图过大或过小。第4行:
plt.hist(xs, bins=100, color="navy")hist是绘制直方图的核心函数:- 第一个参数
xs是要可视化的样本数据; bins=100把x轴划分为100个区间(也就是100根柱子),柱子越多,能展示的分布细节越细致;color="navy"设置柱子为深蓝色。
这行的作用就是把10万个样本转换成直方图,直观展示样本的分布规律。
- 第一个参数
第5行:
plt.xlim(0, 80);
强制设置x轴的显示范围为0到80,防止极少数极端大的样本值把图表拉变形,让我们能聚焦看清楚分布的主体形态。
内容的提问来源于stack exchange,提问作者ricenix
相关产品推荐
相关产品推荐

