2016-07-29 13 views
0

Ich habe einen Dreikanalmatrix und ich möchte, um den Wert setzen, der kleiner als 27Stellenwerte von Zustand mit numpy

a=numpy.arange(27).reshape(3,3,3) 
a[a<27]=0 

Wenn ich jedoch nur auf dem ersten Kanal ersetzt werden soll, die Art und Weise kann ich Do ist eine For-Schleife

for i in range(3): 
    for j in range(3): 
     if a[i][j][0] < 27: 
      a[i][j][0]=0 

zu schreiben Ich bin mir nicht sicher, wie man das mit einer einfacheren Methode macht.

danke

Antwort

2

Sie können versuchen, mit:

a=numpy.arange(27).reshape(3,3,3) 
a[a[:,:,0]<27, 0]=0 
1

denke ich, Sie für diese Suche wurden: a[:,:,0][a[:,:,0]<27]=0