擅长:python、mysql、java
<p>首先,让我们重新创建一个示例文件:</p>
<pre><code>data = '''\
Martial|Serial|Related
ExOne|GroupOne|
ExTwo|GroupOne|
ExThree|GroupOne|
ExFour|GroupTwo|
ExFive|GroupTwo|
ExSix|GroupThree|'''
with open('test.csv', 'w') as f:
f.write(data)
</code></pre>
<p>现在实际的代码使用<a href="https://pandas.pydata.org/" rel="nofollow noreferrer">Pandas</a>(Pandas与Anaconda包一起提供)。使用<code>pip install pandas</code>安装它而不使用anaconda。你知道吗</p>
<pre><code>import pandas as pd
df = pd.read_csv('test.csv', sep='|')
df['Related'] = df['Serial'].map(df.groupby('Serial')['Martial']
.apply(lambda x: '///'.join(x)))
df.to_csv('output.csv', index=False)
</code></pre>
<p>退货:</p>
<pre><code> Martial Serial Related
0 ExOne GroupOne ExOne///ExTwo///ExThree
1 ExTwo GroupOne ExOne///ExTwo///ExThree
2 ExThree GroupOne ExOne///ExTwo///ExThree
3 ExFour GroupTwo ExFour///ExFive
4 ExFive GroupTwo ExFour///ExFive
5 ExSix GroupThree ExSix
</code></pre>