df.rename() 重新命名列名

rename方法作用: 复制 DataFrame并对其索引index和列标签columns进行赋值。如果希望就地修改某个数据集,传入inplace=True即可

DataFrame.rename(**kwargs)

参数:

  1. mapper:dict-like or function,这个字段我也不是很清楚它的用法
  2. index:dict-like or function,指定哪个索引
  3. columns:dict-like or function,指定哪个列名,一般是字典形式,如:{'name':‘姓名’},name是要替换的久列名,姓名是替换后的列名
  4. axis:{0 or ‘index’, 1 or ‘columns’}, default 0,如果参数中出现了columns而没有出现index,则axis默认等于1,其实这个参数一般不用我们自己设置
  5. copy:bool, default True
  6. inplace:bool, default False :是否覆盖原来的数据
  7. level:int or level name, default None
  8. errors:{‘ignore’, ‘raise’}, default ‘ignore’

返回:

DataFrame

DataFrame.rename 支持两种调用约定

  • (index=index_mapper, columns=columns_mapper, ...)

  • (mapper, axis={'index', 'columns'}, ...)

官网例子

使用字典重命名列

import pandas as pd
df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]})
df.rename(columns={"A": "a", "B": "c"})

'''
   a  c
0  1  4
1  2  5
2  3  6
'''

使用字典重命名索引

df.rename(index={0: "x", 1: "y", 2: "z"})

'''
输出:
   A  B
x  1  4
y  2  5
z  3  6
'''

使用方程重命名索引

#str是方程,当然也可以是自定义的方程
df.rename(index=str).index
#Index(['0', '1', '2'], dtype='object')

使用axis 参数

#这就是mapper, axis的调用
df.rename(str.lower, axis='columns')
df.rename({1: 2, 2: 4}, axis='index')

官网地址:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.rename.html

 

posted on 2020-09-18 10:37  小小喽啰  阅读(14548)  评论(0编辑  收藏  举报