pandas修改DataFrame列名的方法介绍(代码示例)

本篇文章给大家带来的内容是关于pandas修改dataframe列名的方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

本文参考自:pandas 修改 DataFrame 列名 
原博客针对每个DataFrame.columns中的元素做相同的修改操作
而拙作是对每个元素做不同操作的生搬硬套, 请大家不吝赐教

提出问题

存在一个名为dataset的DataFrame

>>> dataset.columnsIndex(['age', 'job', 'marital', 'education', 'default', 'housing', 'loan',       'contact', 'month', 'day_of_week', 'duration', 'campaign', 'pdays',       'previous', 'poutcome', 'emp.var.rate', 'cons.price.idx',       'cons.conf.idx', 'euribor3m', 'nr.employed', 'y'],      dtype='object')

登录后复制

现在, 我要将其columns名字改为:

>>> new_columnsIndex(['age_0', 'job_1', 'marital_2', 'education_3', 'default_4', 'housing_5',       'loan_6', 'contact_7', 'month_8', 'day_of_week_9', 'duration_10',       'campaign_11', 'pdays_12', 'previous_13', 'poutcome_14',       'emp.var.rate_15', 'cons.price.idx_16', 'cons.conf.idx_17',       'euribor3m_18', 'nr.employed_19', 'y_20'],      dtype='object')

登录后复制

该如何操作?

解决

一.通过DataFrame.columns类的自身属性修改:

1.无脑赋值直接修改

>>> # 先解决`new_columns`的推导问题>>> # 列表推导>>> new_columns_list = [column_str+'_'+str(i) for i ,column_str in enumerate(dataset.columns)]>>> # 类型转换>>> new_columns = pd.core.indexes.base.Index(new_columns_list)>>> dataset.columns = new_columns

登录后复制

2.通过.map(mapper, na_action=None)函数来修改

>>> # 注:mapper 多运用 lambda 表达式>>> # 但我似乎没有找到在 lambda 表达式中改变两个值的方法>>> # 所以只能蹩脚地用一个全局变量i, 和映射函数mapper()>>> # 希望大家能帮我找到方法>>> i = 0>>> def mapper(x): # 映射函数即 mapper    global i    x += '_' + str(i)    i += 1    return x>>> dataset.columns.map(mapper)

登录后复制

3.参考博客用到了DataFrame.columns.str对象

用help(DataFrame.columns.str)翻遍了文档,
也没能找到可以被我拿来套用的方法, 想着抽时间把这段文档翻译一下

二.通过DataFrame.rename()函数来修改

1.暴力字典法(好处:可以只修改特定的列)

>>> # 此处先用字典推导法>>> new_dict = {    key:key+'_'+str(i)    for i, key in enumerate(dataset.columns)    }>>> dataset.rename(columns=new_dict, inplace=True)

登录后复制

2.映射修改法

>>> # 原博文依然用到了 lambda 表达式>>> # 我就再生搬硬套一次, 把上面的复制过来>>> # 蹩脚地用一个全局变量i, 和映射函数mapper()>>> i = 0>>> def mapper(x): # 映射函数即 mapper    global i    x += '_' + str(i)    i += 1    return xdataset.rename(columns=mapper, inplace=True)

登录后复制

稍微总结一下 : 字典推导和列表推导的使用方法很类似, 最大的区别是选择中括号还是大括号

以上就是pandas修改DataFrame列名的方法介绍(代码示例)的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2533975.html

(0)
上一篇 2025年3月5日 21:24:02
下一篇 2025年2月24日 11:29:04

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 怎么找到黑客的联系方式?

    如果你想要找到黑客的联系方式,那么你可能面临以下难题:黑客往往会隐藏他们的身份,并且他们的联系方式很难被发现。php小编草莓在这里为你提供了一份指南,旨在帮助你找到黑客的联系方式。在本指南中,我们将介绍一些常见的黑客使用的联系方式,并提供一…

    2025年3月5日
    200
  • Python文件操作的介绍(代码示例)

    本篇文章给大家带来的内容是关于Python文件操作的相关知识介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 1、文件操作 1-1 遍历文件夹和文件 import osrootDir = “/path/to/…

    编程技术 2025年3月5日
    200
  • python中yield的用法介绍(附代码)

    本篇文章给大家带来的内容是关于微信小程序python中yield的用法介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 首先,如果你还没有对yield有个初步分认识,那么你先把yield看做“return”,这…

    编程技术 2025年3月5日
    200
  • python语言能做什么

    python语言可以用来做许多事,常见的一般有web开发、爬虫开发、人工智能以及游戏开发和构建桌面软件等等 Python是一个非常好用的编程语言而且开发速度快,语法简单通俗易懂,容易上手。非常适合初学者是一个非常好用的编程语言,开发的速度非…

    2025年3月5日
    200
  • Python装饰器的详细用法介绍(代码示例)

    本篇文章给大家带来的内容是关于python装饰器的详细用法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 在Python中,装饰器一般用来修饰函数,实现公共功能,达到代码复用的目的。在函数定义前加上@xxx…

    编程技术 2025年3月5日
    200
  • Python实现二叉树的算法实例

    本篇文章给大家带来的内容是关于Python实现二叉树的算法实例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 节点定义 class Node(object): def __init__(self, left_child, …

    编程技术 2025年3月5日
    200
  • python中的id()函数及读取list的方法介绍(代码示例)

    本篇文章给大家带来的内容是关于python中的id()函数及读取list的方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 id(object) return the “identity” of an o…

    编程技术 2025年3月5日
    200
  • python如何处理excel数据

    python处理excel数据的方法:1、使用xlrd来处理;2、使用【xlutils+xlrd】来处理;3、使用xlwt来处理;4、使用pyExcelerator来处理;5、使用Pandas库来处理。 这里有一张excel数据表,下面我们…

    2025年3月5日
    200
  • Python中数据类型时间的介绍(附代码)

    本篇文章给大家带来的内容是关于Python中数据类型时间的介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 1、什么是时间数据类型 python中表示时间类型的数据结构为时间数据类型; 2.time模块 imp…

    编程技术 2025年3月5日
    200
  • python使用PyQt5的详细教程(代码示例)

    本篇文章给大家带来的内容是关于python使用pyqt5的详细教程(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 一:安装PyQt5 pip install pyqt5 登录后复制 二:PyQt5简单使用 1:…

    2025年3月5日 编程技术
    200

发表回复

登录后才能评论