我试图沿一个轴边缘化一个数组,并检查一维峰值是否出现在与原始二维峰值相同的相关索引处。以下断言在什么情况下(形式x
)会失败?
def check(x,axis=None):
import numpy
m = numpy.sum(x, axis=axis)
v,w = numpy.unravel_index(numpy.argmax(x), x.shape)
assert(v==numpy.argmax(m))
return
对于x=numpy.array(range(15)).reshape(5,3)
,check(x,axis=0)
会引发错误,但check(x,axis=1)
不会。我不明白为什么 anAssertionError
会被提出 - 我是不是很愚蠢?