,可以使用pandas库中的rename()函数来实现。
rename()函数可以接受一个字典作为参数,字典的键表示旧的列名,值表示新的列名。我们可以通过遍历dataframe的列名,找到与旧名称相似的列名,并将其替换为新的列名。
以下是一个示例代码:
import pandas as pd
def rename_similar_columns(df, old_name, new_name):
new_columns = {}
for column in df.columns:
if old_name in column:
new_column = column.replace(old_name, new_name)
new_columns[column] = new_column
df.rename(columns=new_columns, inplace=True)
# 示例用法
df = pd.DataFrame({'old_name_1': [1, 2, 3], 'old_name_2': [4, 5, 6], 'other_column': [7, 8, 9]})
print("原始dataframe:")
print(df)
rename_similar_columns(df, 'old_name', 'new_name')
print("重命名后的dataframe:")
print(df)
输出结果:
原始dataframe:
old_name_1 old_name_2 other_column
0 1 4 7
1 2 5 8
2 3 6 9
重命名后的dataframe:
new_name_1 new_name_2 other_column
0 1 4 7
1 2 5 8
2 3 6 9
在这个示例中,我们定义了一个rename_similar_columns()
函数,它接受一个dataframe、旧名称和新名称作为参数。函数通过遍历dataframe的列名,找到包含旧名称的列名,并将其替换为新名称。最后,使用df.rename()
函数将新的列名应用到dataframe中。
这个方法适用于需要批量重命名具有相似字符串的列名的情况,例如在数据清洗和数据处理过程中。
领取专属 10元无门槛券
手把手带您无忧上云