numpy.nonzero 的用法
本文给出了 np.nonzero
的常见用法
返回非零元的索引
如:
1 | >>> x = np.array([[1, 2, 3], [1, 0, 2], [3, 2, 1]]) |
其中输出的两个数组分别代表行数和列数,这里 (0,0), (0, 1), (0, 2) ...
不为零。
也可以用 transpose(nonzero(x))
来按元素返回:
1 | >>> np.transpose(np.nonzero(x)) |
于是,我们就可以用 x[nonzero(x)]
来提取数组中的非零元:
1 | >>> x[np.nonzero(x)] |
返回符合某条件的元素索引:
1 | >>> x > 1 |
MATLAB 中类似的操作:
1 | >> x = [1 2 3; 1 0 2; 3 2 1] |