小编rai*_*123的帖子

创建函数以重命名熊猫数据框中的列

我有如下数据框:

df = pd.DataFrame({'$a':[1,2], '$b': [10,20]})
Run Code Online (Sandbox Code Playgroud)

我尝试创建一个允许动态更改列名的函数,我可以在函数中输入旧列名和新列名,如下所示:

def rename_column_name(df, old_column, new_column):
    df = df.rename({'{}'.format(old_column) : '{}'.format(new_column)}, axis=1)
    return df
Run Code Online (Sandbox Code Playgroud)

此功能仅适用于我只有一个输入的情况,如下所示:

new_df = rename_column_name(df, '$a' , 'a')
Run Code Online (Sandbox Code Playgroud)

这给了我这个 new_df 如下:

new_df = pd.DataFrame({'a':[1,2], '$b': [10,20]})
Run Code Online (Sandbox Code Playgroud)

但是,我想创建一个函数,允许我根据自己的喜好对多列/一列进行更改:

new_df = rename_column_name(df, ['$a','$b'] , ['a','b'])
Run Code Online (Sandbox Code Playgroud)

并获得如下所示的 new_df

new_df = pd.DataFrame({'a':[1,2], 'b': [10,20]})
Run Code Online (Sandbox Code Playgroud)

那么,如何使我的函数更加动态,以允许我自由输入多个/一个列名称并重命名它们?

python rename function dataframe pandas

2
推荐指数
1
解决办法
1902
查看次数

标签 统计

dataframe ×1

function ×1

pandas ×1

python ×1

rename ×1