擅长:python、mysql、java
<p>在代码的基础上,这里有一个选项可以链接两个<code>replace</code>调用和一个<code>strip</code>调用。你知道吗</p>
<pre><code>df['pat_num'].str.replace('0', '').str.replace(r'\|+', ',').str.strip(',')
0 US3973996,US88573
1 US6162985,US839838,US88573
Name: pat_num, dtype: object
</code></pre>
<hr/>
<p><code>extractall</code>可能会给您带来更好的里程:</p>
<pre><code>df['pat_num'].str.extractall(r'(US\d+)')[0].groupby(level=0).agg(','.join)
0 US3973996,US8008573
1 US6162985,US8309838,US8008573
Name: 0, dtype: object
</code></pre>
<p>这和下面的<code>findall</code>选项都使用id的结构“USXXXXXXX”(无论<code>(US\d+)</code>捕获什么)。你知道吗</p>
<hr/>
<p>同样,您也可以使用<code>findall</code>并加入子列表:</p>
<pre><code>df['pat_num'].str.findall(r'(US\d+)').str.join(',')
0 US3973996,US8008573
1 US6162985,US8309838,US8008573
Name: pat_num, dtype: object
</code></pre>