Betrachten Sie die folgenden 3-dimensionale Arrays, die mit den Werten -1 zufällig bestückt sind, 0 und 1:
import numpy as np
np.random.seed(2016) # use a fixed seed to get the same results on multiple runs
N = 3
A = np.random.randint(-1, 2, N**3).reshape([N, N, N])
B = np.random.randint(-1, 2, N**3).reshape([N, N, N])
Beachten Sie, dass Sie verwenden müssen ein fester Samen (zum Beispiel 2016), um die gleichen Ergebnisse auf mehreren Läufe zu erhalten:
>>> print A
[[[ 1 1 0]
[-1 1 -1]
[-1 -1 -1]]
[[ 0 1 1]
[-1 1 1]
[ 0 1 0]]
[[ 0 1 0]
[-1 1 1]
[-1 1 0]]]
>>> print B
[[[-1 0 0]
[-1 -1 1]
[ 0 -1 -1]]
[[-1 -1 -1]
[-1 1 1]
[-1 1 1]]
[[ 1 1 -1]
[-1 0 1]
[-1 1 -1]]]
Wenn Ihr Ziel ist es, dass die Indizes der Elemente zu extrahieren, die mit 1 in den beiden Matrizen sind, können Sie feststellen, Dieser Code wird verwendet Ful:
>>> np.transpose(np.where((A==1)*(B==1)))
array([[1, 1, 1],
[1, 1, 2],
[1, 2, 1],
[2, 0, 1],
[2, 1, 2],
[2, 2, 1]], dtype=int64)
vielleicht etwas voreilig diese Frage zu veröffentlichen. Benutzte numpys logische_und (x1, x2 [, out]) – JB1