2014-04-29 15 views

Antwort

11

Ich gehe davon aus das Array wie folgt aussieht:

 |(HUE)(VALUE)(CLASS) 
row/col| 0  1  2 
-------+----------------- 
0  | 0  1  2 
1  | 3  4  5 
2  | 6  7  8 
.  | .  .  . 
.  | .  .  . 
3599999| .  .  . 

Und hier der Beispielcode ist. Der Einfachheit halber änderte ich die Größe 3600000 bis 5.

a = np.array(xrange(5 * 3)) 
a.shape = (5, 3) 

Jetzt Array a sieht wie folgt aus:

array([[ 0, 1, 2], 
     [ 3, 4, 5], 
     [ 6, 7, 8], 
     [ 9, 10, 11], 
     [12, 13, 14]]) 

Wenn Sie mit HUE=9 rudern wollen, wie dies zu tun:

a[np.where(a[:,0] == 9)] 
#array([[ 9, 10, 11]]) 

Wenn Sie wollen Zeile mit VALUE=4, wie folgt:

Wenn Sie rudern wollen mit HUE=0 und VALUE=1, gehen sie wie folgt:

a[np.where((a[:,0] == 0) * (a[:,1] == 1))] 
#array([[0, 1, 2]]) 
+1

es ist wirklich hilfreich. –

2

Versuchen Sie diesen Code:

x[x[:, 2] == class_number[:, :2] 

wo x ist np.ndarray

x[:, 2] == class_number 

enthält true/false das heißt, ob die letzte class_number ist oder nicht.

Sie müssen sich auf einen Blick nehmen: Boolean indexing in http://wiki.scipy.org/Cookbook/Indexing

verschobene Kommentar.

Verwandte Themen