nonzero 函數(shù)主要用來返回特定條件或者是非0的矩陣索引位置,為一個(gè)二維數(shù)組,即行列的組合。
>>> x = np.eye(3)
>>> x
array(
[[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 0., 1.]])
>>> np.nonzero(x)
(array([0, 1, 2]), array([0, 1, 2]))
這里
[0, 1, 2]
[0, 1, 2]
-> [0, 0] [1,1] [2,2] 便是x矩陣中非0元素的位置索引
也可以用來比較 返回true false 中 true的索引
>>> a = np.array([[1,2,3],[4,5,6],[7,8,9]])
>>> a > 3
array([
[False, False, False],
[ True, True, True],
[ True, True, True]], dtype=bool)
>>> np.nonzero(a > 3)
(array([1, 1, 1, 2, 2, 2]),
array([0, 1, 2, 0, 1, 2]))