Pandas dataframe重命名列名

Pandas重命名有三种方法:

1、使用columns重命名

>>> df = pd.DataFrame({'$a':[1,2], '$b': [10,20]})
>>> df.columns = ['a', 'b']
>>> df
   a   b
0  1  10
1  2  20

这种重命名方法是直接在原来的dataframe上修改。但需要对所有的列名重命名。

2、rename()方法

对指定列重命名可以使用rename()方法。默认是使用新的列名新建一个dataframe。

df = df.rename(columns={'oldName1': 'newName1', 'oldName2': 'newName2'})

如果要在原来的dataframe上修改列名,可以设置参数inplace为True。 

df.rename(columns={'oldName1': 'newName1', 'oldName2': 'newName2'}, inplace=True)

也可以使用lambda批量修改:

df.rename(columns=lambda x: x[1:], inplace=True)

3、Pandas 0.21+

pandas0.21重命名方法做了更改:rename()和set_axis()方法。

rename()

rename(),新增了参数axis,它的值为可以columns或者1,当参数为columns或1时,用于修改列名:

df.rename({'$a':'a', '$b':'b', '$c':'c', '$d':'d', '$e':'e'}, axis='columns')

lambda:

df.rename(lambda x: x[1:], axis='columns')

set_axis

rename()是对指定列名做更改,set_axis则是可以重新设置列名,inplace参数用于标记是否在原来的dataframe修改列名:

df.set_axis(['a', 'b', 'c', 'd', 'e'], axis='columns', inplace=False)

版权声明:著作权归作者所有。

相关推荐

Git重命名本地和远程分支

1、在本地新建分支git branch -m old_branch new_branch 2、unset-upstream新分支git branch --unset-upstream new_branch 这是为了避免新分支还会使用旧分支名push到远程服务器。3、关联新分支到远程服务器git push --

Pandas对应SQL的in和not in实现

在Pandas提供了pd.isin(),使用它可以实现SQL的in和not in。not in 对应于:~a.isin(b) 示例:假如有以下dataframe数据,它包含了列data如下:>>> df   data 0   a 1   b 2 &nb

Kotlin:命名规范

命名风格默认和Java的命名风格一样。使用驼峰命名风格类型以大写开头方法和属性以小写开头使用4个空格缩进公开的函数应该写文档 冒号分隔类型和子类型的冒号前有一个空格分割实例变量名与类型的冒号前没有空格示例:interface Foo<out T : Any> : Bar {   &nbs