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中尾递归用法实例详解
Apr 28 Python
python实现DES加密解密方法实例详解
Jun 30 Python
Python 忽略warning的输出方法
Oct 18 Python
flask-restful使用总结
Dec 04 Python
DES加密解密算法之python实现版(图文并茂)
Dec 06 Python
对python中list的拷贝与numpy的array的拷贝详解
Jan 29 Python
Python JSON编解码方式原理详解
Jan 20 Python
Python paramiko 模块浅谈与SSH主要功能模拟解析
Feb 29 Python
使用python实现名片管理系统
Jun 18 Python
基于python图书馆管理系统设计实例详解
Aug 05 Python
python 将列表里的字典元素合并为一个字典实例
Sep 01 Python
Python extract及contains方法代码实例
Sep 11 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简单选择排序算法实例
2015/01/26 PHP
深入理解PHP变量的值类型和引用类型
2015/10/21 PHP
javascript正则表达式使用replace()替换手机号的方法
2015/01/19 Javascript
jQuery获取与设置iframe高度的方法
2016/08/01 Javascript
jQuery simpleModal插件的使用介绍
2016/08/30 Javascript
JavaScript函数参数的传递方式详解
2017/03/06 Javascript
node.js操作mongodb简单示例分享
2017/05/25 Javascript
js学习总结之DOM2兼容处理顺序问题的解决方法
2017/07/27 Javascript
vue项目使用微信公众号支付总结及遇到的坑
2018/10/23 Javascript
Vue父组件如何获取子组件中的变量
2019/07/24 Javascript
Vue源码分析之Vue实例初始化详解
2019/08/25 Javascript
javascript移动端 电子书 翻页效果实现代码
2019/09/07 Javascript
vue 动态添加class,三个以上的条件做判断方式
2020/11/02 Javascript
[54:05]DOTA2-DPC中国联赛定级赛 SAG vs iG BO3第一场 1月9日
2021/03/11 DOTA
[01:08:30]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant BO3 第一场 2月28日
2021/03/11 DOTA
浅要分析Python程序与C程序的结合使用
2015/04/07 Python
Python实现简单文本字符串处理的方法
2018/01/22 Python
Pandas之drop_duplicates:去除重复项方法
2018/04/18 Python
Python中的取模运算方法
2018/11/10 Python
用Pycharm实现鼠标滚轮控制字体大小的方法
2019/01/15 Python
在python中用print()输出多个格式化参数的方法
2019/07/16 Python
Python利用Pillow(PIL)库实现验证码图片的全过程
2020/10/04 Python
VSCode 自定义html5模板的实现
2019/12/05 HTML / CSS
运动鞋、街头服装、手表和手袋的实时市场:StockX
2020/11/25 全球购物
给定一个时间点,希望得到其他时间点
2013/11/07 面试题
家居设计专业个人自荐信范文
2013/11/26 职场文书
销售工作岗位职责
2013/12/24 职场文书
教师网络培训感言
2014/03/09 职场文书
办公室文员岗位职责范本
2014/06/12 职场文书
2014国庆节商场促销活动策划方案
2014/09/16 职场文书
安全检查汇报材料
2014/12/26 职场文书
2015年个人思想总结
2015/03/09 职场文书
乔布斯辞职信(中英文对照)
2015/05/12 职场文书
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
2021/07/01 Java/Android
《王国之心》迎来了发售的20周年, 野村哲发布贺图
2022/04/11 其他游戏
Linux在两个服务器直接传文件的操作方法
2022/08/05 Servers