[Numpy-discussion] Indexing and lookup issues

Anne Archibald aarchiba at physics.mcgill.ca
Wed Sep 22 16:42:26 EDT 2010


On 22 September 2010 16:38, Ross Williamson
<rosswilliamson.spt at gmail.com> wrote:
> Hi everyone
>
> I suspect this is easy but I'm stuck
>
> say I have a 1D array:
>
> t = [10,11,12]
>
> and a 2D array:
>
> id = [[0,1,0]
> [0,2,0]
> [2,0,2]]
>
> In could in IDL do y = t[id] which would produce:
>
> y = [[10,11,10]
> [10,12,10]
> [12,10,12]]
>
> i.e. use the indexes in id on the lookup array t.
>
> Is there an easy way to do this in numpy?

In [1]: t = np.array([10,11,12])

In [2]: id = np.array([[0,1,0], [0,2,0], [2,0,2]])

In [3]: t[id]
Out[3]:
array([[10, 11, 10],
       [10, 12, 10],
       [12, 10, 12]])

Anne



More information about the NumPy-Discussion mailing list