Pythonの組み込み関数にはallとanyがありますが、NumPyにも同じような機能があります。
all
numpy.allはすべての要素が真(True)であるときにTrueを返します。引数axisを0とすると縦軸ごとの結果を返し、1とすると横軸ごとの結果を返します。na_1は、縦軸で見た場合「1, 0, 1」「1, 0, 1」「1, 1, 1」なので [False False True] となり、横軸で見た場合は「1, 1, 1」「0, 0, 1」「1, 0, 1」なので [ True False False] となります。
import numpy na_1 = numpy.array( [ [1, 1, 1], [0, 0, 1], [1, 0, 1], ] ) na_2 = numpy.array( [ [1, 1, 1], [1, 1, 1], [1, 1, 1], ] ) print(numpy.all(na_1)) print(numpy.all(na_2)) print('-------------------------') print(numpy.all(na_1, axis=0)) print(numpy.all(na_1, axis=1))
False True ------------------------- [False False True] [ True False False]
またndarrayクラスにもallメソッドが実装されています。
import numpy na_1 = numpy.array( [ [1, 1, 1], [0, 0, 1], [1, 0, 1], ] ) na_2 = numpy.array( [ [1, 1, 1], [1, 1, 1], [1, 1, 1], ] ) print(na_1.all()) print(na_2.all()) print('-------------------------') print(na_1.all(axis=0)) print(na_1.all(axis=1))
False True ------------------------- [False False True] [ True False False]
any
numpy.anyはいずれか要素が真(True)であるときにTrueを返します。引数axisについてはallと同じです。
import numpy na_1 = numpy.array( [ [1, 0, 1], [0, 0, 0], [1, 0, 1], ] ) print(numpy.any(na_1)) print('-------------------------') print(numpy.any(na_1, axis=0)) print(numpy.any(na_1, axis=1))
True ------------------------- [ True False True] [ True False True]
またndarrayクラスにもanyメソッドが実装されています。
import numpy na_1 = numpy.array( [ [1, 0, 1], [0, 0, 0], [1, 0, 1], ] ) print(na_1.any()) print('-------------------------') print(na_1.any(axis=0)) print(na_1.any(axis=1))
True ------------------------- [ True False True] [ True False True]