<p>如果没有缺少值,可以尝试<code>list comprehension</code>:</p>
<pre><code>df['new'] = [j.replace(i, '') for i, j in zip(df['SUFFIX'], df['COD_METEL'])]
print (df)
SUFFIX COD_METEL new
0 CBR CBR8901027 8901027
1 CBR CBR8901028 8901028
2 CBR CBR8904001 8904001
3 CBR CBR8904002 8904002
4 CBR CBR8904008 8904008
5 CBR CBR8904027 8904027
6 CBR CBR8904039 8904039
7 THO THO96666290 96666290
8 THO THO96666294 96666294
9 THO THO96666298 96666298
10 THO THO96666302 96666302
11 THO THO96666322 96666322
12 THO THO96666326 96666326
13 ZV ZV111900NI 111900NI
14 ZV ZV111910NI 111910NI
15 ZX ZX2021.AC 2021.AC
16 ZX ZX2021.AC 2021.AC
17 ZX ZX6066.AC 6066.AC
18 ZX ZX6111.AC 6111.AC
19 ZX ZX6111.AC 6111.AC
20 ZX ZX6380.AC 6380.AC
21 ZX ZX9030 9030
22 ZX ZX9030 9030
23 ZX ZX9030 9030
24 ZZ ZZ00012565 00012565
</code></pre>
<p>性能:</p>
<pre><code>#[250000 rows x 2 columns]
df = pd.concat([df] * 10000, ignore_index=True)
#print (df)
In [289]: %timeit df['RESULT'] = df.apply(lambda x: x['COD_METEL'].replace(x['SUFFIX'], ''), axis=1)
5.05 s ± 347 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
In [290]: %timeit df['new'] = [j.replace(i, '') for i, j in zip(df['SUFFIX'], df['COD_METEL'])]
98.7 ms ± 8.8 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
</code></pre>