如何使用 Python 从正态分布中生成 100 个等间距的数字



我在python中使用np.random.normal((使用正态分布生成随机数

但是有没有办法在 python 中使用正态分布生成等间距的数字

使用 numpy.linspace(( 在 Python 中生成等间距的数字。

下面的代码将生成 50 个等间距的数字(在 x 轴上(,正态分布的平均值为 8,标准偏差为 3,覆盖正态分布的 10% 到 90% 区域。

import numpy as np  
from scipy.stats import norm    
x = np.linspace(norm(8,3).ppf(0.1), norm(8,3).ppf(0.9), 50)  

要获取 50 个等间距 x 轴值中每个值的正态分布的 y 轴值,请使用以下代码:

y = norm(8,3).pdf(x)

linspace(( 命令的详细信息:

numpy.linspace(start, stop, num = 50, endpoint = True, retstep = False, dtype = None( 均匀地返回数字空间 w.r.t 间隔

  • 开始 : [可选] 间隔范围的开始。默认情况下开始 = 0
  • 停止:间隔范围结束
  • num : [整数,可选] 要生成的样本数
  • restep :如果为 True,则返回 (samples, step(。默认情况下,重新步进 = 假
  • dtype : 输出数组的类型

最新更新