擅长:python、mysql、java
<p>在我看来,一个更具可读性的解决方案,不应该导致<code>SettingWithCopyWarning</code>,是计算部分掩码作为一个单独的步骤。你知道吗</p>
<p>然后在<code>pd.DataFrame.loc</code>中使用<code>&</code>运算符一次:</p>
<pre><code>mask = A0['Pääkategoria'].isnull() & (A0.Määrä < 0)
A0.loc[mask & A1.SaajaMaksaja.str.contains('|'.join(catfilter)), 'Pääkategoria'] = cat1
</code></pre>
<p>正如您所注意到的,链接<code>loc</code>索引器可能会引发<code>SettingWithCopyWarning</code>。但是这种链式运算在计算布尔级数的交集时是不必要的。你知道吗</p>