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 21 Python
Python实现竖排打印传单手机号码易撕条
Mar 16 Python
python中使用PIL制作并验证图片验证码
Mar 15 Python
TensorFlow实现随机训练和批量训练的方法
Apr 28 Python
python读取word文档,插入mysql数据库的示例代码
Nov 07 Python
Python设计模式之备忘录模式原理与用法详解
Jan 15 Python
深入了解Python枚举类型的相关知识
Jul 09 Python
python实现复制文件到指定目录
Oct 16 Python
django 中使用DateTime常用的时间查询方式
Dec 03 Python
Python实现仿射密码的思路详解
Apr 23 Python
如何写python的配置文件
Jun 07 Python
如何清空python的变量
Jul 05 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求数组全排列,元素所有组合的方法
2016/05/05 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
jQuery AJAX实现调用页面后台方法和web服务定义的方法分享
2012/03/01 Javascript
javascript通过navigator.userAgent识别各种浏览器
2013/10/25 Javascript
ie8模式下click无反应点击option无反应的解决方法
2014/10/11 Javascript
jquery动感漂浮导航菜单代码分享
2020/04/15 Javascript
javascript动态生成树形菜单的方法
2015/11/14 Javascript
jQuery Validate表单验证深入学习
2015/12/18 Javascript
javascript中json基础知识详解
2017/01/19 Javascript
Angular.js指令学习中一些重要属性的用法教程
2017/05/24 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
JavaScript闭包_动力节点Java学院整理
2017/06/27 Javascript
angularjs路由传值$routeParams详解
2020/09/05 Javascript
Webpack4+Babel7+ES6兼容IE8的实现
2019/04/10 Javascript
微信小程序自定义toast组件的方法详解【含动画】
2019/05/11 Javascript
了解JavaScript中的选择器
2019/05/24 Javascript
webpack4之如何编写loader的方法步骤
2019/06/06 Javascript
[12:29]《一刀刀一天》之DOTA全时刻19:蝙蝠骑士田伯光再度不举
2014/06/10 DOTA
Python函数参数类型*、**的区别
2015/04/11 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
对python读取zip压缩文件里面的csv数据实例详解
2019/02/08 Python
Python递归函数 二分查找算法实现解析
2019/08/12 Python
使用python实现离散时间傅里叶变换的方法
2019/09/02 Python
python web框架中实现原生分页
2019/09/08 Python
浅谈python之自动化运维(Paramiko)
2020/01/31 Python
2014年高三毕业生自我评价
2014/01/11 职场文书
大学优秀班主任事迹材料
2014/05/02 职场文书
爱与责任演讲稿
2014/05/20 职场文书
酒店员工培训方案
2014/06/02 职场文书
青年标兵事迹材料
2014/08/16 职场文书
珠宝的促销活动方案
2014/08/31 职场文书
世界名著读书笔记
2015/06/25 职场文书
导游词之苏州盘门景区
2019/11/12 职场文书
创业计划书之闲置物品置换中心
2019/12/25 职场文书
Python基础之常用库常用方法整理
2021/04/30 Python