擅长:python、mysql、java
<p>需要在<code>lambda function</code>中将<code>df</code>更改为<code>x</code>而不是<code>Series</code>作为函数中的输入:</p>
<pre><code>df['col3'] = df.apply(lambda x: myf(x['col1'], x['col2']), axis= 1)
</code></pre>
<p>另一个更快的解决方案是使用<a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.combine_first.html" rel="nofollow noreferrer">^{<cd5>}</a>或<a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.where.html" rel="nofollow noreferrer">^{<cd6>}</a>:</p>
<pre><code>df['col3'] = df['col1'].mul(2).combine_first(df['col2'])
</code></pre>
<hr/>
<pre><code>df['Col3'] = df['col2'].where(df['col1'].isnull(), df['col1']*2)
</code></pre>