如何在 python 中使用 runif() 的等效项


在R编程语言中,我们可以使用runif()函数生成一个随机值向量,该向量遵循具有特定最小值和最大值的均匀分布

例如,下面的代码展示了如何使用runif()创建一个由 8 个随机值组成的向量,该向量遵循均匀分布,最小值为 5,最大值为 10:

 #make this example reproducible
set. seeds (1)

#generate vector of 8 values that follow uniform distribution with min=5 and max=10
runif(n=8, min=5, max=10)

[1] 6.327543 6.860619 7.864267 9.541039 6.008410 9.491948 9.723376 8.303989

Python 中runif()函数的等效项是np.random.uniform()函数,它使用以下基本语法:

np.random.uniform(低=0,高=1,大小=无)

金子:

  • low :分布的最小值
  • high :分布的最大值
  • 尺寸:样品尺寸

下面的例子展示了如何在实际中使用这个功能。

示例:在 Python 中使用 runif() 的等效项

以下代码展示了如何使用np.random.uniform()函数生成遵循具有特定最小值和最大值的均匀分布的随机值数组:

 import numpy as np

#make this example reproducible
n.p. random . seeds (1)

#generate array of 8 values that follow uniform distribution with min=5 and max=10
n.p. random . uniform (low= 5 , high= 10 , size= 8 )

array([7.08511002, 8.60162247, 5.00057187, 6.51166286, 5.73377945,
       5.46169297, 5.93130106, 6.72780364])

结果是一个 NumPy 数组,包含从均匀分布生成的 8 个值,最小值为 5,最大值为 10。

您还可以使用 Matplotlib 创建直方图来可视化由np.random.uniform()函数生成的正态分布:

 import numpy as np
import matplotlib. pyplot as plt

#make this example reproducible
n.p. random . seeds (1)

#generate array of 200 values that follow uniform distribution with min=5 and max=10
data = np. random . uniform (low= 5 , high= 10 , size= 200 )

#create histogram to visualize distribution of values
plt. hist (data, bins= 30 , edgecolor=' black ')

x 轴显示分布的值,y 轴显示每个值的频率。

请注意,x 轴从 5 到 10,因为这些是我们为分布指定的最小值和最大值。

注意:您可以在此处找到np.random.uniform()函数的完整文档。

其他资源

以下教程解释了如何在 pandas 中执行其他常见操作:

如何使用随机数据创建 Pandas DataFrame
如何在 Pandas 中随机采样行
如何打乱 Pandas DataFrame 中的行

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注