numpy.nonzero函式是numpy中用於得到陣列array中非零元素的位置(陣列索引)的函式.
numpy.nonzero()函式是numpy中用於得到陣列array中非零元素的位置(陣列索引)的函式,很適合用來對資料下標的提取。著重需要強調的是nonzero函式中不僅可以放數值矩陣/行列,同樣可以放布林型(true、false)矩陣/行列,由於這個特性其適用範圍更加的廣泛和優秀,下面做乙個簡單的介紹和資料的實踐。
返回陣列a中非零元素的索引值陣列。
(1)只有a中非零元素才會有索引值,那些零值元素沒有索引值;
(2)返回的索引值陣列是乙個2維tuple陣列,該tuple陣列中包含一維的array陣列。其中,一維array向量的個數與a的維數是一致的。
(3)索引值陣列的每乙個array均是從乙個維度上來描述其索引值。比如,如果a是乙個二維陣列,則索引值陣列有兩個array,第乙個array從行維度來描述索引值;第二個array從列維度來描述索引值。
(4) 該np.transpose(np.nonzero(x))
函式能夠描述出每乙個非零元素在不同維度的索引值。
(5)通過a[nonzero(a)]得到所有a中的非零值
import numpy as npa=[
1,0,
2]b=np.nonzero(a)
# 尋找一維陣列中不為零的元素位置
print
(b)輸出結果:(array([0
,2], dtype=int64),)
a4=np.mat([1
,0,5
,2])
print
(a4.nonzero()[
0])# 輸出一維陣列元素內非零元素所在行數,並形成陣列表示
輸出結果:[00
0]print
(a4.nonzero()[
1])# 輸出一維陣列元素內非零元素所在列數,並形成陣列表示
輸出結果:[02
3]
可以看出a[0],a[2]索引處元素是非零元素。
import numpy as npa=[
[0],
[1],
[2]]
b=np.nonzero(a)
print
(b)輸出結果: (array([1
,2], dtype=int64)
, array([0
,0], dtype=int64)
)
這裡我們可以看出,array([1, 2], dtype=int64)是第乙個array表示非零元素所在的第1,2行。array([0, 0], dtype=int64)第二個array表示非零元素所在的第0,0列,分別取對應位置的值組成非零元素的座標。
import numpy as np
a=np.mat([[
0],[
4],[
5]])
print
(a.nonzero()[
0])# 尋找不為零元素所在行數,並形成陣列表示
輸出結果:[12
]print
(a.nonzero()[
0][0
])# 行數陣列位置0數值
輸出結果:1
print
(a.nonzero()[
0][1
])# 行數陣列位置1數值
輸出結果:2
print
(a.nonzero()[
1])# 尋找不為零元素所在列數,並形成陣列表示
輸出結果:[00
]print
(a.nonzero()[
1][0
])# 列數陣列位置0數值
輸出結果:0
print
(a.nonzero()[
1][1
])# 列數陣列位置1數值
輸出結果:0
函式基礎 匿名函式,函式,箭頭函式,立即執行函式
doctype html html lang en head meta charset utf 8 meta name viewport content width device width,initial scale 1.0 title document title head body body ...
函式 常見函式
def fib n if n 1 return 1if n 2 return 1return fib n 1 fib n 2 def hannuo n,a,b,c n 表示有n個盤子 a 代表第乙個塔,開始的塔 b 代表第二個塔,過渡塔 c 代表第三個塔,目標塔 d.在 中n 2,這個分支可以不要,...
Lua 函式 函式
在lua中,函式是一種對語句和表示式進行抽象的主要機制。函式既可以完成某項特定的任務,也可以只做一些計算並返回結果。lua具有一項非常於總不同的特徵,允許函式返回多個結果 s,e string.find hello lua users lua print s,e 7 9 以lua編寫的函式同樣可以返...