我想用Numpy计算一个奇异矩阵(行列式为0),当我打印行列式时,它显示一个非常小的数值(接近于零的-7.09974814699e-30),而不是零本身...
当我尝试使用%s、%d或%f打印行列式时,有时是零,有时是-0,有时是-7.09974814699e-30。
以下是代码:
如何让Numpy将诸如-7.09974814699e-30这样的非常小的数字视为零,并显示为零。我之前也问过这个问题,如果你看一下矩阵,你会发现它充满了非常小的数字,而不是零,而实际上它应该是一个对角矩阵,对角线上有数字,其他地方都是零。
当我尝试使用%s、%d或%f打印行列式时,有时是零,有时是-0,有时是-7.09974814699e-30。
以下是代码:
import numpy as np
array = np.arange(16)
array = array.reshape(4, -1)
determinant = np.linalg.det(array)
print("Determinant is %s" % determinant)
print("Determinant is %d" % determinant)
print("Determinant is %f" % determinant)
Determinant is -7.09974814699e-30
Determinant is 0
Determinant is -0.000000
如何让Numpy将诸如-7.09974814699e-30这样的非常小的数字视为零,并显示为零。我之前也问过这个问题,如果你看一下矩阵,你会发现它充满了非常小的数字,而不是零,而实际上它应该是一个对角矩阵,对角线上有数字,其他地方都是零。