12 ML python nonzero

2016-06-09  本文已影响0人  peimin

官网文档

nonzero 函数主要用来返回特定条件或者是非0的矩阵索引位置,为一个二维数组,即行列的组合。

>>> 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]))
上一篇 下一篇

猜你喜欢

热点阅读