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中使用SAX解析xml实例
Nov 21 Python
在Python中使用zlib模块进行数据压缩的教程
Jun 26 Python
Python聚类算法之基本K均值实例详解
Nov 20 Python
Python使用当前时间、随机数产生一个唯一数字的方法
Sep 18 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
Apr 27 Python
python调用摄像头拍摄数据集
Jun 01 Python
聊聊python里如何用Borg pattern实现的单例模式
Jun 06 Python
Python matplotlib生成图片背景透明的示例代码
Aug 30 Python
Python中sorted()排序与字母大小写的问题
Jan 14 Python
深入了解Python装饰器的高级用法
Aug 13 Python
详解scrapy内置中间件的顺序
Sep 28 Python
深入理解python多线程编程
Apr 18 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
解决163/sohu/sina不能够收到PHP MAIL函数发出邮件的问题
2009/03/13 PHP
php empty函数判断mysql表单是否为空
2010/04/12 PHP
php file_exists 检查文件或目录是否存在的函数
2010/05/10 PHP
document.onreadystatechange事件的用法分析
2009/10/17 Javascript
再说AutoComplete自动补全之实现原理
2011/11/05 Javascript
JS格式化数字金额用逗号隔开保留两位小数
2013/10/18 Javascript
addEventListener()第三个参数useCapture (Boolean)详细解析
2013/11/07 Javascript
JavaScript定义类和对象的方法
2014/11/26 Javascript
jQuery中:submit选择器用法实例
2015/01/03 Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
2015/09/18 Javascript
JavaScript面试开发常用的知识点总结
2016/08/08 Javascript
Bootstrap和Angularjs配合自制弹框的实例代码
2016/08/24 Javascript
将html页面保存成图片,图片写入pdf的实现方法(推荐)
2016/09/17 Javascript
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
2017/06/12 jQuery
angularJs提交文本框数据到后台的方法
2018/10/08 Javascript
一个因@click.stop引发的bug的解决
2019/01/08 Javascript
Vue 利用指令实现禁止反复发送请求的两种方法
2019/09/15 Javascript
JavaScript判断数据类型有几种方法及区别介绍
2020/09/02 Javascript
Python的Flask框架中集成CKeditor富文本编辑器的教程
2016/06/13 Python
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
socket + select 完成伪并发操作的实例
2017/08/15 Python
python多行字符串拼接使用小括号的方法
2020/03/19 Python
利用python开发app实战的方法
2019/07/09 Python
Python实现的爬取豆瓣电影信息功能案例
2019/09/15 Python
django模型动态修改参数,增加 filter 字段的方式
2020/03/16 Python
利用4行Python代码监测每一行程序的运行时间和空间消耗
2020/04/22 Python
python自动提取文本中的时间(包含中文日期)
2020/08/31 Python
使用Python操作MySQL的小技巧
2020/09/10 Python
生物有机护肤品:Aurelia Probiotic Skincare
2018/01/31 全球购物
英国最大的婴儿监视器网上商店:Baby Monitors Direct
2018/04/24 全球购物
车辆维修工自我评价怎么写
2013/09/20 职场文书
国培远程培训感言
2014/03/08 职场文书
2015年国庆节演讲稿范文
2015/07/30 职场文书
一个成功的互联网创业项目,必须满足这些要求
2019/08/23 职场文书
浅谈Nginx 中的两种限流方式
2021/03/31 Servers
Redis官方可视化工具RedisInsight安装使用教程
2022/04/19 Redis