擅长:python、mysql、java
<p>您必须在两侧进行过滤:</p>
<pre><code>mask0 = (df['condition'] == 1)
mask1 = (df['condition'] == 0)
df.loc[mask0, 'newColumn'] = df.loc[mask0, 'otherColumn1']
df.loc[mask1, 'newColumn'] = df.loc[mask1, 'otherColumn2']
</code></pre>
<p>但是这里最好使用<a href="https://docs.scipy.org/doc/numpy/reference/generated/numpy.select.html" rel="noreferrer">^{<cd1>}</a>来避免重复代码:</p>
<pre><code>df['newColumn'] = np.select([mask0, mask1],
[df['otherColumn1'], df['otherColumn2']],
default=np.nan)
</code></pre>