同一数学运算的不同结果

2024-06-16 09:42:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Python3和numpy,我正在执行以下操作:

diff1 = np.abs(self.trainX - sample_repeated)
diff2 = np.abs(sample_repeated - self.trainX)
print("diff1 equals diff2?")
if(np.array_equal(diff1,diff2)): 
    print("Yes")
else:
    print("No")

我希望diff1等于diff2。知道为什么代码总是显示“不”吗?所有数组都具有相同的(self.trainX公司,重复样本,diff1和diff2)。你知道吗

注意:numpy docs报告array_equal为“如果两个数组具有相同的形状和元素,则为True,否则为False。”

已解决:您的数组是uint8,这将导致溢出。必须先将它们转换为int


Tags: sampleselfnumpynpabs数组equalarray