In [45]: aOut[45]: array([[1, 1, 0], [1, 0, 0], [1, 0, 0], [1, 1, 0]])
将每个值与第一行中的相应值进行比较:
In [46]: a == a[0,:]Out[46]: array([[ True, True, True], [ True, False, True], [ True, False, True], [ True, True, True]], dtype=bool)
如果该列中的所有值均为True,则该列共享一个公共值:
In [47]: np.all(a == a[0,:], axis = 0)Out[47]: array([ True, False, True], dtype=bool)
np.equal.reduce可以通过微观分析将其应用于以下情况时可以看到的问题
[1, 0, 0, 1]:
In [49]: np.equal.reduce([1, 0, 0, 1])Out[50]: True
前两项,
1并
0经过相等性测试,结果为
False:
In [51]: np.equal.reduce([False, 0, 1])Out[51]: True
现在
False,
0经过测试是否相等,结果为
True:
In [52]: np.equal.reduce([True, 1])Out[52]: True
但是
True和相等,因此总结果为
True,这不是期望的结果。
问题是,
reduce我们希望像那样进行“全局”测试时,试图“本地”累积结果
np.all。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)