如何在 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 中的行