numpy.nonzero()function用於計算非零元素的索引。
它返回一個數組元組,每個數組對應arr維度,其中包含該維度中非零元素的索引。
數組中對應的非零值可以使用 arr[nonzero(arr)]
。要按元素而不是按維度對索引進行分組,我們可以使用 transpose(nonzero(arr))
。
用法: numpy.nonzero(arr)
參數:
arr :[數組]輸入數組。
Return :[tuple_of_arrays]非零元素的索引。
代碼1:工作
# Python program explaining
# nonzero() function
import numpy as geek
arr = geek.array([[0, 8, 0], [7, 0, 0], [-5, 0, 1]])
print ("Input array:\n", arr)
out_tpl = geek.nonzero(arr)
print ("Indices of non zero elements:", out_tpl)
輸出:
Input array:
[[ 0 8 0]
[ 7 0 0]
[-5 0 1]]
Indices of non zero elements: (array([0, 1, 2, 2], dtype=int64), array([1, 0, 0, 2], dtype=int64))
代碼2:
# Python program for getting
# The corresponding non-zero values:
out_arr = arr[geek.nonzero(arr)]
print ("Output array of non-zero number:", out_arr)
輸出:
Output array of non-zero number: [ 8 7 -5 1]
代碼3:
# Python program for grouping the indices
# by element, rather than dimension
out_ind = geek.transpose(geek.nonzero(arr))
print ("indices of non-zero number:\n", out_ind)
輸出:
indices of non-zero number: [[0 1] [1 0] [2 0] [2 2]]
相關用法
注:本文由純淨天空篩選整理自jana_sayantan大神的英文原創作品 numpy.nonzero() in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。