参考np.nonzero関数は、要素が0以外のインデックスを取得するシンプルな関数です。本記事では、np.nonzeroの使い方を解説します。np.nonzeronumpy.nonzeroとnumpy.ndarray.nonzeroの2つのタイプがあるので両方記載しておきますが、使い方はほとんど同じです。APIドキュメントからみていきましょう。要素の抽出を行いたい配列を指定します。returns:非ゼロ要素のあるインデックスを各軸ごとに1次元配列にして返します。配列(ndarray)のタプル(tuple)の形で返されます。numpy.ndarray.nonzero()returns:非ゼロ要素のあるインデックスを各軸ごとに1次元配列にして返します。配列(ndarray)のタプル(tuple)の形で返されます。np.nonzeroは配列を引数にとります。np.ndarray.nonzeroはndarrayのメソッドとして使えます。インデックスを返してくれるので、うまく使えば非ゼロの必要な要素だけを抽出することができます。使い方を実際のコードでみていきましょう。これで非ゼロ要素抜き出した配列を生成できる。1つめの配列が行方向のインデックス、2つめの配列が列方向のインデックスになっている。6])np.where、np.argwhereとの比較この操作はnp.where(x!=0)で全く同じことができます。np.where関数については、以下のリンクに詳しい解説があるので参照してみてください。/features/numpy-where.htmlnp.whereでは、3項演算子も使用できます。次のように使用することが出来ます。5.]])np.argwhereはインデックスの転置を返します。np.argwhere(a)はnp.transpose(np.nonzero(a))と同義です。次の記事flattenよりも高速に配列を一次元化するnumpy.ravel関数の使い方DeepAgeではAIに関する厳選した内容を記事にしてお届けします。