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]
