numpy arange函数构建数组大小错误
numpy arange function build array size error
当我使用numpy arange 函数构建一个numpy 数组时,使用shape 检查时大小不正确。
比如我建一个数组:np.arange(-5,6,1),形状就是(11,)。
但是,当我构建 array:np.arange(-0.001,0.0011,0.0001) 时,形状是 (22,)
用np.array.shape找到的形状
看起来当你打印数组时,你得到这个 -
array([-1.00000000e-03, -9.00000000e-04, -8.00000000e-04, -7.00000000e-04,
-6.00000000e-04, -5.00000000e-04, -4.00000000e-04, -3.00000000e-04,
-2.00000000e-04, -1.00000000e-04, 4.33680869e-19, 1.00000000e-04,
2.00000000e-04, 3.00000000e-04, 4.00000000e-04, 5.00000000e-04,
6.00000000e-04, 7.00000000e-04, 8.00000000e-04, 9.00000000e-04,
1.00000000e-03, 1.10000000e-03])
当值 4.33680869e-19 建议的值 4.33680869e-19 应为 0 时,当 -0.001 增加 0.0001 时,似乎存在一些舍入问题。这意味着数组中的每个后续值都略小于显示的值.这就是为什么最后一个值 0.0011 在不应该包含在数组中的原因。这就是给你形状不匹配的原因。
我建议这样做,这样舍入就不会成为问题。
x = np.arange(-10,11,1)
x = x/10000
x.shape # gets (21,)
print(x)
当我使用numpy arange 函数构建一个numpy 数组时,使用shape 检查时大小不正确。 比如我建一个数组:np.arange(-5,6,1),形状就是(11,)。 但是,当我构建 array:np.arange(-0.001,0.0011,0.0001) 时,形状是 (22,)
用np.array.shape找到的形状
看起来当你打印数组时,你得到这个 -
array([-1.00000000e-03, -9.00000000e-04, -8.00000000e-04, -7.00000000e-04,
-6.00000000e-04, -5.00000000e-04, -4.00000000e-04, -3.00000000e-04,
-2.00000000e-04, -1.00000000e-04, 4.33680869e-19, 1.00000000e-04,
2.00000000e-04, 3.00000000e-04, 4.00000000e-04, 5.00000000e-04,
6.00000000e-04, 7.00000000e-04, 8.00000000e-04, 9.00000000e-04,
1.00000000e-03, 1.10000000e-03])
当值 4.33680869e-19 建议的值 4.33680869e-19 应为 0 时,当 -0.001 增加 0.0001 时,似乎存在一些舍入问题。这意味着数组中的每个后续值都略小于显示的值.这就是为什么最后一个值 0.0011 在不应该包含在数组中的原因。这就是给你形状不匹配的原因。
我建议这样做,这样舍入就不会成为问题。
x = np.arange(-10,11,1)
x = x/10000
x.shape # gets (21,)
print(x)