擅长:python、mysql、java
<p>这里的问题是您试图分配给数组的副本,而不是视图,因此<code>ndarray</code>保持不变。你知道吗</p>
<p>一种方法是使用<a href="https://docs.scipy.org/doc/numpy/reference/generated/numpy.where.html" rel="nofollow noreferrer">^{<cd2>}</a>:</p>
<pre><code>replace_with = np.vstack([np.ones(a.shape[0]), a[:,1]])
np.where((a==[0,1]).all(1)[:,None], replace_with, a)
array([[1., 1.],
[2., 3.]])
</code></pre>
<hr/>
<p>这里的<code>replace_with</code>是一个<code>ndarray</code>,第一列是1,第二列是<code>a</code>的内容,因为这似乎就是你想要做的:</p>
<pre><code>print(replace_with)
array([[1., 1.],
[1., 3.]])
</code></pre>