相关疑难解决方法(0)

为什么np.dot不精确?(n维数组)

假设我们采用np.dot两个'float32'2D数组:

res = np.dot(a, b)   # see CASE 1
print(list(res[0]))  # list shows more digits
Run Code Online (Sandbox Code Playgroud)
[-0.90448684, -1.1708503, 0.907136, 3.5594249, 1.1374011, -1.3826287]
Run Code Online (Sandbox Code Playgroud)

数字。除了它们可以更改:


案例1:切片a

np.random.seed(1)
a = np.random.randn(9, 6).astype('float32')
b = np.random.randn(6, 6).astype('float32')

for i in range(1, len(a)):
    print(list(np.dot(a[:i], b)[0])) # full shape: (i, 6)
Run Code Online (Sandbox Code Playgroud)
[-0.9044868,  -1.1708502, 0.90713596, 3.5594249, 1.1374012, -1.3826287]
[-0.90448684, -1.1708503, 0.9071359,  3.5594249, 1.1374011, -1.3826288]
[-0.90448684, -1.1708503, 0.9071359,  3.5594249, 1.1374011, -1.3826288]
[-0.90448684, -1.1708503, 0.907136,   3.5594249, 1.1374011, -1.3826287]
[-0.90448684, -1.1708503, 0.907136,   3.5594249, 1.1374011, -1.3826287] …
Run Code Online (Sandbox Code Playgroud)

c python arrays precision numpy

15
推荐指数
1
解决办法
437
查看次数

标签 统计

arrays ×1

c ×1

numpy ×1

precision ×1

python ×1