numpy.random.uniform
时间: 2024-05-10 12:15:32 浏览: 9
`numpy.random.uniform` 是 NumPy 库中的一个随机数生成器函数,它用于生成指定形状的随机浮点数数组,其中每个数都是从给定的区间内均匀分布随机采样得到的。
函数语法如下:
```python
numpy.random.uniform(low=0.0, high=1.0, size=None)
```
其中各参数的含义如下:
- `low`:生成随机数的最小值,默认值为 0.0。
- `high`:生成随机数的最大值,默认值为 1.0。
- `size`:指定生成随机数数组的形状,默认为 None,即生成一个标量随机数。
函数返回一个指定形状的随机浮点数数组。如果 `size` 参数为 None,则返回一个标量随机数。
下面是一个示例:
```python
import numpy as np
# 生成一个形状为 (2, 3) 的随机浮点数数组
arr = np.random.uniform(low=-1.0, high=1.0, size=(2, 3))
print(arr)
```
输出结果如下:
```
[[ 0.80012221 -0.60134538 -0.56557052]
[-0.77330127 -0.4370641 0.78903203]]
```
在这个示例中,我们使用 `numpy.random.uniform` 函数生成了一个形状为 (2, 3) 的随机浮点数数组,其中每个数都是从 [-1.0, 1.0] 区间内均匀分布随机采样得到的。
相关问题
numpy.random.normal()和random.gauss()、scipy.stats.norm.rvs() numpy.random.uniform()和random.uniform()、scipy.stats.uniform.rvs() 以上两类的不同分别是什么
这两类函数的不同主要体现在它们所属的库以及参数的设置上。
1. `numpy.random.normal()` 和 `random.gauss()`、`scipy.stats.norm.rvs()` 的区别:
- 所属库不同:`numpy.random.normal()` 属于 NumPy 库的 random 模块,而 `random.gauss()` 和 `scipy.stats.norm.rvs()` 分别属于 Python 内置的 random 模块和 SciPy 库的 stats 模块。
- 参数设置略有不同:`numpy.random.normal()` 需要指定均值和标准差作为参数,而 `random.gauss()` 和 `scipy.stats.norm.rvs()` 则分别需要指定均值和标准差或者位置和尺度作为参数。其中,`scipy.stats.norm.rvs()` 还可以通过 loc 和 scale 参数来指定均值和标准差。
2. `numpy.random.uniform()` 和 `random.uniform()`、`scipy.stats.uniform.rvs()` 的区别:
- 所属库不同:`numpy.random.uniform()` 属于 NumPy 库的 random 模块,而 `random.uniform()` 和 `scipy.stats.uniform.rvs()` 分别属于 Python 内置的 random 模块和 SciPy 库的 stats 模块。
- 参数设置略有不同:`numpy.random.uniform()` 需要指定最小值和最大值作为参数,而 `random.uniform()` 和 `scipy.stats.uniform.rvs()` 则分别需要指定最小值和最大值或者 loc 和 scale 作为参数。其中,`scipy.stats.uniform.rvs()` 还可以通过 loc 和 scale 参数来指定最小值和最大值。
虽然这些函数的功能相似,都用于生成随机数,但具体使用时可以根据自己的需求和使用习惯选择适合的函数。
numpy.random的用法举例说明
numpy.random是NumPy库中的一个子模块,用于生成各种概率分布的随机数。下面是一个使用numpy.random生成正态分布随机数的示例:
```python
import numpy as np
# 生成均值为0,标准差为1的正态分布随机数
x = np.random.normal(0, 1, size=(3, 3))
print(x)
```
输出结果如下:
```
[[-0.71974122 -0.07736272 1.15861415]
[-0.19771452 -0.14787495 -0.54026674]
[ 0.80179416 -0.47349949 0.47906924]]
```
以上代码使用np.random.normal()函数生成3x3的矩阵,其中每个元素都是从均值为0,标准差为1的正态分布中随机生成的。其他常用的随机数生成函数还包括np.random.uniform()(生成在指定范围内的均匀分布随机数)、np.random.randint()(生成指定范围内的整数随机数)等。