<p>您可以使用<a href="https://docs.scipy.org/doc/numpy/reference/generated/numpy.select.html" rel="nofollow noreferrer">^{<cd1>}</a>来选择现有的值或串联的值。你知道吗</p>
<p>试试这个:</p>
<pre class="lang-py prettyprint-override"><code>import pandas as pd
import numpy as np
from io import StringIO
df1 = pd.read_csv(StringIO("""
ID word
1 srv1
2 srv2
3 srv1
4 nan
5 srv3
6 srv1
7 srv5
8 nan"""), sep=r"\s+")
df2 = pd.read_csv(StringIO("""
ID word
1 nan
2 srv12
3 srv10
4 srv8
5 srv4
6 srv7
7 nan
8 srv9"""), sep=r"\s+")
conditions = [(~df1["word"].isna()) & df2["word"].isna(), df1["word"].isna() & (~df2["word"].isna()), (~df1["word"].isna()) & (~df2["word"].isna())]
choices = [df1["word"], df2["word"], df1["word"] + "," + df2["word"]]
df1["word"] = np.select(conditions,choices)
print(df1)
</code></pre>
<p>输出:</p>
<pre><code> ID word
0 1 srv1
1 2 srv2,srv12
2 3 srv1,srv10
3 4 srv8
4 5 srv3,srv4
5 6 srv1,srv7
6 7 srv5
7 8 srv9
</code></pre>