擅长:python、mysql、java
<p>您看到的问题是,您只选择了最后两个字符,因此函数只返回最后两个字符。您需要将原始部分与替换部分合并</p>
<pre class="lang-py prettyprint-override"><code>df = pd.DataFrame([
'AZBYCCCD0',
'NZBY23HG1',
'BZYCQ05CO',
'YODZ225H0',
pd.np.NaN,
'CS45DRNZQ',], columns = ['Col1'])
repl = {'0':'O','1':'I'}
df['Col1'].astype(str).str[:7] + df['Col1'].astype(str).str[7:].replace(repl, regex=True)
</code></pre>
<p>如预期的那样返回:</p>
<pre class="lang-py prettyprint-override"><code>0 AZBYCCCDO
1 NZBY23HGI
2 BZYCQ05CO
3 YODZ225HO
4 nan
5 CS45DRNZQ
Name: Col1, dtype: object
</code></pre>