<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Feb 2, 2014 at 2:58 PM, Mads Ipsen <span dir="ltr"><<a href="mailto:mads.ipsen@gmail.com" target="_blank">mads.ipsen@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div id=":xi" style="overflow:hidden">Since atoms [1,2,3,7,8] have been<br>

deleted, the remaining atoms with indices larger than the deleted atoms<br>
must be decremented.</div></blockquote></div><br>Let</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">>>> x</div><div class="gmail_extra">array([[ 0,  1,  2,  3],</div><div class="gmail_extra">
       [ 4,  5,  6,  7],</div><div class="gmail_extra">       [ 8,  9, 10, 11]])</div><div class="gmail_extra"><br></div><div class="gmail_extra">and</div><div class="gmail_extra"><br></div><div class="gmail_extra">>>> i = [1, 0, 2]<br>
</div><div class="gmail_extra"><br></div><div class="gmail_extra">Create a shape of x matrix with 1's at (k, i[k]) and zeros elsewhere</div><div class="gmail_extra"><div class="gmail_extra">>>> b = zeros_like(x)</div>
<div class="gmail_extra">>>> b.put(i + arange(3)*4 + 1, 1)  # there must be a simpler way</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">>>> x - b.cumsum(1)</div>
<div class="gmail_extra">array([[ 0,  1,  1,  2],</div><div class="gmail_extra">       [ 4,  4,  5,  6],</div><div class="gmail_extra">       [ 8,  9, 10, 10]])</div><div class="gmail_extra"><br></div><div class="gmail_extra">
seems to be the result you want.</div></div></div></div></div>