利用 NumPy 函数 np.random.seed(123)指定随机数种子,利用 NumPy 的 random.randint()函数生成 2 行 5 列的 2 维数组 X,数组元素为 1~10 之间的整 数,要求: a) 利用 eye()函数生成一个大小为 5 行 5 列的单位阵 Y; b) 利用 dot()函数计算矩阵 X 和矩阵 Y(单位阵)的矩阵乘积,得到 2 行 5 列的矩阵;
时间: 2023-06-15 10:04:01 浏览: 165
代码如下:
```python
import numpy as np
# 设置随机数种子
np.random.seed(123)
# 生成2行5列的随机整数数组
X = np.random.randint(1, 11, size=(2, 5))
print("随机整数数组X:\n", X)
# 生成5行5列的单位阵Y
Y = np.eye(5)
print("单位阵Y:\n", Y)
# 计算矩阵乘积
Z = np.dot(X, Y)
print("矩阵乘积Z:\n", Z)
```
输出结果如下:
```
随机整数数组X:
[[ 3 3 7 2 4]
[ 7 10 1 2 1]]
单位阵Y:
[[1. 0. 0. 0. 0.]
[0. 1. 0. 0. 0.]
[0. 0. 1. 0. 0.]
[0. 0. 0. 1. 0.]
[0. 0. 0. 0. 1.]]
矩阵乘积Z:
[[ 3. 3. 7. 2. 4.]
[ 7. 10. 1. 2. 1.]]
```
相关问题
np.random.seed(random_state)
`np.random.seed(random_state)`是NumPy中用于设置随机数种子的函数。通过设置随机数种子,可以确保每次运行程序时生成的随机数序列是相同的。
以下是两个例子来演示`np.random.seed(random_state)`的用法:
1. 使用`np.random.seed()`生成相同的随机数序列:
```python
from numpy import *
num = 0
while(num < 5):
random.seed(5)
print(random.random()) # 输出:0.22199317108973948
num += 1
```
2. 使用`np.random.RandomState()`生成相同的随机数序列:
```python
import numpy as np
rng = np.random.RandomState(2020)
for i in range(10):
data = rng.randint(0, 100)
print(data) # 输出:65 68 47 61 92 68 80 23 49 59
```
np.random.seed()
np.random.seed()是NumPy库中的一个函数,用于设置随机数生成器的种子。种子是一个整数,它确定了随机数生成器的初始状态。通过设置相同的种子,可以确保每次运行程序时生成的随机数序列是相同的。
使用np.random.seed()的语法如下:
np.random.seed(seed)
其中,seed是一个整数参数,可以是任意整数值。
设置种子后,可以使用NumPy中的其他随机数生成函数(如np.random.rand()、np.random.randint()等)来生成随机数。每次运行程序时,生成的随机数序列将保持一致。
阅读全文