擅长:python、mysql、java
<p>如果您试图连接未知数量的列,可以将<code>apply</code>与<code>str.join</code>一起使用:</p>
<pre><code>def foo(df, columns, col_name, sep=''):
s = df[columns].apply(lambda x: sep.join(map(str, x)), 1)
s.name = col_name
return pd.concat([df[df.columns.difference(columns)], s], axis=1)
df
country year cases population
0 Afghanistan 1999 745 19987071
1 Afghanistan 2000 2666 20595360
df2 = foo(df, ['cases', 'population'], 'rate', '/')
df2
country year rate
0 Afghanistan 1999 745/19987071
1 Afghanistan 2000 2666/20595360
</code></pre>
<hr/>
<p>如果总是两列,那么可以使用<code>str.cat</code>,这样会更快。在</p>
^{pr2}$