I have a big np.ndarray (3600000,3), the HUE, the VALUE, and an associated CLASS number. For each pairs of HUE and VALUE I would like to find, using this array the corresponding Class number. I'm a very beginner in Python and have a hard time doing it. Do you know a way to do it?
Thank you in advance!
I assume your array looks like:
|(HUE)(VALUE)(CLASS) row/col| 0 1 2 -------+----------------- 0 | 0 1 2 1 | 3 4 5 2 | 6 7 8 . | . . . . | . . . 3599999| . . . And here is the sample code. For simplicity I changed the size 3600000 to 5.
a = np.array(xrange(5 * 3)) a.shape = (5, 3) Now array a look like this:
array([[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11], [12, 13, 14]]) If you want row with HUE=9, do like this:
a[np.where(a[:,0] == 9)] #array([[ 9, 10, 11]]) If you want row with VALUE=4, do like this:
a[np.where(a[:,1] == 4)] #array([[3, 4, 5]]) If you want row with HUE=0 and VALUE=1, do like this:
a[np.where((a[:,0] == 0) * (a[:,1] == 1))] #array([[0, 1, 2]])
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With