pandas中DataFrame修改index、columns名的方法示例


Posted in Python onAugust 02, 2019

一般常用的有两个方法:

1、使用DataFrame.index = [newName],DataFrame.columns = [newName],这两种方法可以轻松实现。

2、使用rename方法(推荐):
DataFrame.rename(mapper = None,index = None,columns = None,axis = None,copy = True,inplace = False,level = None )

参数介绍:

  • mapper,index,columns:可以任选其一使用,可以是将index和columns结合使用。index和column直接传入mapper或者字典的形式。
  • axis:int或str,与mapper配合使用。可以是轴名称(‘index',‘columns')或数字(0,1)。默认为'index'。
  • copy:boolean,默认为True,是否复制基础数据。
  • inplace:布尔值,默认为False,是否返回新的DataFrame。如果为True,则忽略复制值。
import numpy as np
import pandas as pd
from pandas import Series, DataFrame

df1 = DataFrame(np.arange(9).reshape(3, 3), index = ['bj', 'sh', 'gz'], columns=['a', 'b', 'c'])
print(df1)
'''
  a b c
bj 0 1 2
sh 3 4 5
gz 6 7 8
'''

# 修改 df1 的 index
print(df1.index) # 可以打印出print的值,同时也可以为其赋值
df1.index = Series(['beijing', 'shanghai', 'guangzhou'])
print(df1)
'''
      a b c
beijing  0 1 2
shanghai  3 4 5
guangzhou 6 7 8
'''

# 可以使用map方法进行映射,map的使用方法就和python中的map几乎一样
print(df1.index.map(str.upper)) # Index(['BEIJING', 'SHANGHAI', 'GUANGZHOU'], dtype='object')

print(df1) # 结果 并未改变, 上面只是返回一个 dataframe 而已
'''
      a b c
beijing  0 1 2
shanghai  3 4 5
guangzhou 6 7 8
'''

# 如果 需要 改变的话,可以如下: 另外赋值给一个变量
df1.index = df1.index.map(str.upper)
print(df1) # 这样 就 改变了
'''
      a b c
BEIJING  0 1 2
SHANGHAI  3 4 5
GUANGZHOU 6 7 8
'''

# 更快捷的 方法 使用 rename,可以分别为 index 和 column 来指定值
# 使用 map 的方式来赋值
df2 = df1.rename(index=str.lower, columns=str.upper) # 这种方法 照样是产生一个新的 dataframe
print(df2)
''' 可以很轻松的 修改 dataframe 的 index 和 columns
      A B C
beijing  0 1 2
shanghai  3 4 5
guangzhou 6 7 8
'''

# 同时,rename 还可以传入字典
df3 = df2.rename(index={'beijing':'bj'}, columns = {'A':'aa'}) # 为某个 index 单独修改名称
print(df3) #
'''
      aa B C
bj     0 1 2
shanghai  3 4 5
guangzhou  6 7 8
'''

# 自定义map函数
def test_map(x):
  return x+'_ABC'

print(df1.index.map(test_map))
# 输出 Index(['BEIJING_ABC', 'SHANGHAI_ABC', 'GUANGZHOU_ABC'], dtype='object')

print(df1.rename(index=test_map))
'''
        a b c
BEIJING_ABC  0 1 2
SHANGHAI_ABC  3 4 5
GUANGZHOU_ABC 6 7 8
'''

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python列表与元组详解实例
Nov 01 Python
Python实现配置文件备份的方法
Jul 30 Python
Python判断文件或文件夹是否存在的三种方法
Jul 27 Python
Python tkinter实现的图片移动碰撞动画效果【附源码下载】
Jan 04 Python
Flask框架Flask-Principal基本用法实例分析
Jul 23 Python
python将字符串以utf-8格式保存在txt文件中的方法
Oct 30 Python
Python根据欧拉角求旋转矩阵的实例
Jan 28 Python
windows10下安装TensorFlow Object Detection API的步骤
Jun 13 Python
Django框架基础模板标签与filter使用方法详解
Jul 23 Python
django中media媒体路径设置的步骤
Nov 15 Python
Python三元运算与lambda表达式实例解析
Nov 30 Python
python快速安装OpenCV的步骤记录
Feb 22 Python
pandas DataFrame的修改方法(值、列、索引)
Aug 02 #Python
Flask框架钩子函数功能与用法分析
Aug 02 #Python
pandas DataFrame行或列的删除方法的实现示例
Aug 02 #Python
Python基于BeautifulSoup和requests实现的爬虫功能示例
Aug 02 #Python
详解pandas DataFrame的查询方法(loc,iloc,at,iat,ix的用法和区别)
Aug 02 #Python
pandas DataFrame创建方法的方式
Aug 02 #Python
django项目环境搭建及在虚拟机本地创建django项目的教程
Aug 02 #Python
You might like
五个PHP程序员工具
2008/05/26 PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
2014/05/10 PHP
永不消失的title提示代码
2007/02/15 Javascript
Jquery公告滚动+AJAX后台得到数据
2011/04/14 Javascript
基于jquery自定义图片热区效果
2012/07/21 Javascript
jQuery页面图片伴随滚动条逐渐显示的小例子
2013/03/21 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
js+css实现超简洁的二级下拉菜单效果代码
2015/09/07 Javascript
js实现图片360度旋转
2017/01/22 Javascript
js实现兼容PC端和移动端滑块拖动选择数字效果
2017/02/16 Javascript
详解Vue监听数据变化原理
2017/03/08 Javascript
Angular实现下拉框模糊查询功能示例
2018/01/03 Javascript
微信公众平台 客服接口发消息的实现代码(Java接口开发)
2019/04/17 Javascript
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
javascript贪吃蛇游戏设计与实现
2020/09/17 Javascript
Python中的生成器和yield详细介绍
2015/01/09 Python
对pandas进行数据预处理的实例讲解
2018/04/20 Python
ipad上运行python的方法步骤
2019/10/12 Python
python 上下文管理器及自定义原理解析
2019/11/19 Python
Python GUI编程学习笔记之tkinter中messagebox、filedialog控件用法详解
2020/03/30 Python
python实现俄罗斯方块小游戏
2020/04/24 Python
Python reques接口测试框架实现代码
2020/07/28 Python
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
工地门卫岗位职责
2013/12/30 职场文书
员工入职担保书范文
2014/04/01 职场文书
发布会邀请函
2015/01/31 职场文书
酒店仓管员岗位职责
2015/04/01 职场文书
如何写通讯稿
2015/07/22 职场文书
礼仪培训心得体会
2016/01/22 职场文书
建筑工程挂靠协议书
2016/03/23 职场文书
粗暴解决CUDA out of memory的问题
2021/05/22 Python
《游戏王:大师决斗》新活动上线 若无符合卡组可免费租用
2022/04/13 其他游戏
台积电称即便经济低迷也没有降价的计划
2022/04/21 数码科技
码云(gitee)通过git自动同步到阿里云服务器
2022/12/24 Servers