>>> import numpy as np
>>> a = np.asarray([[1,2,3],[1,5,7],[4,3,6]])
找出每个元素之间的差异。np.diff http://docs.scipy.org/doc/numpy/reference/generated/numpy.diff.html有一个参数可以让您指定轴执行差异
>>> np.diff(a)
array([[ 1, 1],
[ 4, 2],
[-1, 3]])
检查每个差值是否大于 0。
>>> np.diff(a) > 0
array([[ True, True],
[ True, True],
[False, True]], dtype=bool)
检查所有差异是否 > 0
>>> np.all(np.diff(a) > 0)
False
>>>
正如@Jaime所建议的 - 检查每个元素是否大于该元素在它的左边:
np.all(a[:, 1:] >= a[:, :-1], axis=1)
这似乎是我的差异解决方案的两倍快/高效。