【发布时间】:2020-11-19 04:57:51
【问题描述】:
我是编程初学者。
我尝试在一本书中运行一个简单的线性回归示例。 Y=4*X+6
我已设置np.random.seed(0)。
创建X时,书中代码使用2 * np.random.rand(100,1)。
我通过以下方式创建了 X1、X2、X3。下面是代码。
import numpy as np
np.random.seed(0)
X1 = 2 * np.random.rand(5,1)
X2 = np.random.rand(5,1)
X3 = 2 * X2
print('X1= ', X1)
print('X2= ', X2)
print('X3= ', X3)
我在这里有问题。
- np.random.rand(100,1) 乘以 2 是什么意思?运行上面代码的结果,似乎不是简单的翻倍数值或者翻倍大小。
- 为什么 X1 和 X3 的结果不同?
【问题讨论】:
-
它应该只是将所有值加倍。
-
X1 和 X3 是不同的,因为每次调用
np.random.rand()都会得到不同的随机数组。 -
在分配 X2 之前再次调用
np.random.seed(0),然后X1和X3将是相同的。