使用pandas.merge()时为所有列名添加后缀

问题描述 投票:5回答:1

pandas merge()函数允许为重叠的列名添加后缀:

merged = table1.merge(table2, left_on='header', right_on='header',
                      suffixes=('table1', 'table2'))

但是,这仅将后缀添加到重叠列。是否可以为除合并列之外的所有列添加后缀?

python pandas
1个回答
2
投票

您可以在合并之前将后缀添加到表中,并还原合并列名称:

table1.add_suffix('table1')
table1.rename(index=str, columns={'headertable1':'header'})

table2.add_suffix('table2')
table2.rename(index=str, columns={'headertable2':'header'})

merged = table1.merge(table2, on='header')
© www.soinside.com 2019 - 2024. All rights reserved.