今回は、Python numpy で nonzero() を使用する方法と、Python numpy で nonzero() を使用する際の 注意事項 についてお届けします。以下は実際的なケースです。見てみましょう。 nonzero
関数は、ゼロ以外の要素のディレクトリを返します。 戻り値はタプルで、2 つの値はそれぞれ 2 次元であり、対応する次元のゼロ以外の要素のディレクトリ値が含まれます。
import numpy as np A = np.mat([[0,1,2,3,4,3,2,1,0],[0,1,2,3,4,5,6,7,0]]) x = A.nonzero() #取出矩阵中的非零元素的坐标 print x #输出是一个元组,两个维度。一一对应, #返回非零元素在矩阵中的位置,前一个列表存放非零行坐标,后一个列表存放非零元素列坐标 #(array([0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1]), array([1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7])) #放下来一一对应,即 #(array([0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1]), #array([1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7])) # (0,1) (0,2).............................. (1,6) (1,7) 坐标上的元素都是非0的 print A[x],'\n' #取出矩阵中的非零元素 #[[1 2 3 4 3 2 1 1 2 3 4 5 6 7]] B = np.mat([[1,1,0,1,0,1,0,0,1],[0,1,1,0,0,0,1,1,1]]) print np.nonzero(B) # 与B.nonzero()等价
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨書籍:
Python で txt ファイルを 1 行ずつ読み書きする方法 Python で HMacMD5 暗号化アルゴリズムを実装する方法以上がPython numpyでnonzero()を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。