<br><br><div class="gmail_quote">On Fri, Sep 16, 2011 at 10:18 AM, Benjamin Landenberger <span dir="ltr"><<a href="mailto:benjamin.landenberger@imtek.uni-freiburg.de">benjamin.landenberger@imtek.uni-freiburg.de</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hello list!<br>
<br>
I have an array *mask* of shape (a, b) and another array *intensities*<br>
of shape (N, a, b), where the values in *mask* range from 0 to N-1. It<br>
is somehow similar to label arrays in scipy.ndimage.<br>
<br>
Now I want to pick those entries from the first dimension of<br>
*intensities* which are given by *mask*. The returned array shall again<br>
wave shape (a, b).<br>
<br>
Can this be done with fancy indexing?<br></blockquote><div><br><br>The choose() function can be used:<br><br> In [19]: intensities<br>Out[19]: <br>array([[[ 1,  2,  3],<br>        [ 4,  5,  6],<br>        [ 7,  8,  9]],<br>

<br>       [[11, 12, 13],<br>        [14, 15, 16],<br>        [17, 18, 19]],<br><br>       [[21, 22, 23],<br>        [24, 25, 26],<br>        [27, 28, 29]]])<br><br>In [20]: mask<br>Out[20]: <br>array([[0, 0, 1],<br>       [1, 1, 1],<br>

       [1, 2, 2]])<br><br>In [21]: choose(mask, intensities)<br>Out[21]: <br>array([[ 1,  2, 13],<br>       [14, 15, 16],<br>       [17, 28, 29]])<br><br><br>Warren<br><br><br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">


<br>
Thank you,<br>
<br>
Ben<br>
<br>
_______________________________________________<br>
NumPy-Discussion mailing list<br>
<a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/numpy-discussion" target="_blank">http://mail.scipy.org/mailman/listinfo/numpy-discussion</a><br>
</blockquote></div><br>