I want to take an n x m array "a" and index into it using an integer index
array
"i" of length n that will pull out the value at the designated column from each
corresponding row of "a".
>>> a = np.arange(10)
>>> a.shape = 5, 2
>>> a
array([[0, 1],
[2, 3],
[4, 5],
[6, 7],
[8, 9]])
>>> i = np.array([0, 1, 1, 0, 1])
I want:
>>> b = a.foo(i)
>>> b
array([0, 3, 5, 6, 9])
What's foo? I can't get take() to do what I want. I went and wrote my own
little
Cython function to do this, but that seems silly (and is also array dtype
dependent). I've tried reading through the numpy book, and I'm sure this is
somewhere on the list, but I can't find it. I think it has something to do with
fancy indexing. I should know how to do this by know...
Cheers,
Martin
_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion