Was wäre der schnellste Weg, um zu überprüfen, ob ein mehrdimensionales Numpy-Array auf allen Seiten 0 hat?
Für ein einfaches 2D-Beispiel habe ich also:
x = np.random.rand(5, 5)
assert np.sum(x[0:, 0]) == 0
assert np.sum(x[0, 0:]) == 0
assert np.sum(x[0:, -1]) == 0
assert np.sum(x[-1, 0:]) == 0
Während dies für 2D-Fälle in Ordnung ist, ist das Schreiben für höhere Dimensionen etwas mühsam und ich habe mich gefragt, ob es einen cleveren Numpy-Trick gibt, den ich hier verwenden kann, um es effizienter und auch wartbarer zu machen.
np.all (x[:, 0] == 0)
sicherer als die Summe? Der Summentest ist nur dann korrekt, wenn alle Zahlen positiv sind.