Methoden für boolesche Arrays¶
Boolesche Werte wurden in den vorangegangenen Methoden in 1 (True) und 0 (False) umgewandelt. Daher wird sum oft zum Zählen der True-Werte in einem booleschen Array verwendet:
[1]:
import numpy as np
[2]:
rng = np.random.default_rng()
data = rng.normal(size=(7, 3))
data
[2]:
array([[ 0.2892129 , -0.67574399, -1.18853755],
[ 0.30108742, 0.27464408, 0.05025632],
[ 0.43357058, 0.88041496, -1.39839326],
[-2.83019669, 0.34271817, -0.46611059],
[ 1.49941927, 0.57624576, 0.00614989],
[-2.65594888, 1.63339514, -0.26199767],
[-1.31868958, 1.97079266, -0.25957685]])
Anzahl der positiven Werte:
[3]:
(data >= 0).sum()
[3]:
np.int64(12)
Anzahl der negativen Werte:
[4]:
(data < 0).sum()
[4]:
np.int64(9)
Es gibt zwei zusätzliche Methoden, any und all, die besonders für boolesche Arrays nützlich sind:
anyprüft, ob ein oder mehrere Werte in einem Array wahr sindallprüft, ob jeder Wert wahr ist
[5]:
data2 = rng.normal(size=(7, 3))
bools = data > data2
bools
[5]:
array([[ True, False, False],
[ True, True, False],
[ True, True, False],
[False, True, False],
[False, True, True],
[False, False, False],
[False, True, True]])
[6]:
bools.any()
[6]:
np.True_
[7]:
bools.all()
[7]:
np.False_