<p>我有一个包含两列的数据帧:一列包含一个0和一个值,另一列包含一个数值</p>
<pre><code> ZeroOne Value
0 10
1 20
0 15
</code></pre>
<p>目标是生成一个新列,如果ZeroOne列包含“0”,则将value列的值放入其中。如果zerone值是1,那么新列应该是0。因此,在我的示例中,结果应该是:</p>
<pre><code> ZeroOne Value Result
0 10 10
1 20 0
0 15 15
</code></pre>
<p>我试着做一个函数:</p>
<pre><code>def function(a,b):
if a == 1:
return b
else:
return 0
</code></pre>
<p>然后把变量a和b</p>
<pre><code> a = df['ZeroOne']
b = df['Value']
</code></pre>
<p>在这之后,我用这个函数添加了一个新的列</p>
<pre><code> df['result'] = function(a,b)
</code></pre>
<p>它一直给我值错误:</p>
<pre><code> The truth value of a Series is ambiguous. Use a.empty, a.bool(),
a.item(), a.any() or a.all().
</code></pre>
<p>我怎样才能达到我的目标?我做错了什么</p>