2016-05-25 14 views
0

Wie kann ich das 4d z-Array und das 4d QCLOUD-Array ausrichten und dann den z-Wert herausfinden, wenn QCLOUD max auftritt?Das Element in einem Array finden, das dem Maximalwert in einem anderen entspricht

print(z.shape) 
print(qcloud.shape) 
out: (6, 100, 128, 128) 
(6, 99, 128, 128) 
+0

Nur die Indizes 'I' finden, 'J',' k', 'W', wo das Maximum von 'qcloud' tritt auf und drückt dann 'print z [i] [j] [k] [w]' unter der Annahme, dass die Indizes aussagekräftig und kompatibel sind. –

+0

Wenn das Maximum bei 'qcloud [5, 98, 0, 0]' ist, willst du 'z [5, 98, 0, 0]'? Gibt es Umstände, in denen du von 'z [:, 99,:,:]] nehmen würdest? – Eric

Antwort

0

Das Ignorieren der Tatsache, dass (np.array(z.shape) > np.array(qcloud.shape)).any(), Sie wollen argmax:

idx = np.argmax(qcloud) 
result = z[tuple(idx)] 
+0

Vielen Dank für Ihre Hilfe. Der Fehler sagt "Index 3642432 ist außerhalb der Grenzen für Achse 0 mit Größe 6." Was bedeutet das und wie kann ich das beheben? –

+0

@KingAndy: Siehe mein Update – Eric

+0

Danke! Jetzt muss ich die Ausgabe mit Pyart in eine Grafik aufzeichnen. Der Nanargmax (qlcoud) ist (2,24,40,64) und der z [2] [24] [40] [64] -Ausgang ist 847,6181640625. Wie kann ich das grafisch darstellen, und wird dadurch eine konstante Höhe in der Grafik erzeugt? –

Verwandte Themen