擅长:python、mysql、java
<p>由于我们需要访问每行上的3列,因此我们需要重复每行的索引3次,我们可以使用<a href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.repeat.html" rel="nofollow">^{<cd1>}</a>来完成此操作,现在使用重复的行索引和<code>col_ix</code>的扁平版本,我们可以对<code>x</code>执行<a href="http://docs.scipy.org/doc/numpy/user/basics.indexing.html#indexing-multi-dimensional-arrays" rel="nofollow">multi-dimensional indexing</a>:</p>
<pre><code>>>> x[np.repeat(np.arange(a), col_ix.shape[1]), col_ix.ravel()].reshape(col_ix.shape)
array([[ 0, 1, 2],
[ 6, 7, 8],
[10, 12, 14],
[18, 19, 17]])
</code></pre>