np.random.rand()的用法
时间: 2023-08-14 12:27:36 浏览: 42
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
`np.random.rand()` 是 NumPy 中的一个随机数生成函数,用于生成指定形状的数组,并在其中填充从 0 到 1 之间的随机数。具体来说,它有以下两种使用方式:
1. `np.random.rand(d0, d1, ..., dn)`:生成一个形状为 `(d0, d1, ..., dn)` 的数组,并在其中填充从 0 到 1 之间的随机数。
例如,生成一个形状为 `(2, 3)` 的数组:
```python
import numpy as np
arr = np.random.rand(2, 3)
print(arr)
```
输出:
```
[[0.81175639 0.07227567 0.20119002]
[0.94898892 0.98392696 0.91218015]]
```
2. `np.random.rand(n)`:生成一个长度为 `n` 的一维数组,并在其中填充从 0 到 1 之间的随机数。
例如,生成一个长度为 5 的一维数组:
```python
import numpy as np
arr = np.random.rand(5)
print(arr)
```
输出:
```
[0.10333054 0.45341494 0.42023267 0.05799836 0.36830557]
```
需要注意的是,`np.random.rand()` 生成的是伪随机数,其随机性是通过种子数来控制的。如果不设置种子数,则每次运行程序生成的随机数序列都是不同的。如果需要每次生成相同的随机数序列,可以通过设置相同的种子数来实现,例如:
```python
import numpy as np
np.random.seed(0) # 设置种子数为 0
arr1 = np.random.rand(2, 3)
arr2 = np.random.rand(2, 3)
print(arr1)
print(arr2)
```
输出:
```
[[0.5488135 0.71518937 0.60276338]
[0.54488318 0.4236548 0.64589411]]
[[0.43758721 0.891773 0.96366276]
[0.38344152 0.79172504 0.52889492]]
```
在上面的例子中,我们设置了种子数为 0,因此每次生成的随机数序列都是相同的。
阅读全文