文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Pandas修改DataFrame列名的两种方法实例

2024-04-02 19:55

关注

输入:

   $a  $b  $c  $d  $e
0   1   2   3   4   5

 期望的输出:

   a  b  c  d  e
0  1  2  3  4  5

原数据DataFrame:

import pandas as pd
 
df = pd.DataFrame({'$a': [1], '$b': [2], '$c': [3], '$d': [4], '$e': [5]})

解决方法1:通过DataFrame.columns类的自身属性修改

1. 暴力修改

df.columns = ['a', 'b', 'c', 'd', 'e']

2. stirp 方法

strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。

df.columns = df.columns.str.strip('$')

3. lambda 表达式

map() 会根据提供的函数对指定序列做映射。以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。

lambda x: x[1:]表示取第二个元素,因此列表名$a、$b等只取出a、b。

df.columns = df.columns.map(lambda x: x[1:])

解决方法2:通过DataFrame.rename()函数修改

1. 暴力修改(可以只修改部分列名)

df.rename(columns=('$a': 'a', '$b': 'b', '$c': 'c', '$d': 'd', '$e': 'e'}, inplace=True) 

2. lambda 表达式

调用replace函数,把$替换为空。

df.rename(columns=lambda x:x.replace('$',''), inplace=True)

pandas 更改DataFrame的行名或列名实例

更改行名或更改列名可以选用rename函数。

首先,构建一个dataframe:

import pandas as pd
d={'one':{'a':1,'b':2,'c':3,'d':4},'two':{'a':5,'b':6,'c':7,'d':8},'three':{'a':9,'b':10,'c':11,'d':12}}
df=pd.DataFrame(d)
print(df)
1
2
3
4

输出结果为:

one two three
a 1 5 9
b 2 6 10
c 3 7 11
d 4 8 12

更改列名

将第2列列名更改为twotwo

df.rename(columns={'two':'twotwo'},inplace=True)
print(df)
1
2

输出结果为:

one twotwo three
a 1 5 9
b 2 6 10
c 3 7 11
d 4 8 12

更改行名

将第1行和第2行的行名更改为aa,bb

df.rename(index={'a':'aa','b':'bb'},inplace=True)
print(df)
1
2

输出结果为:

one twotwo three
aa 1 5 9
bb 2 6 10
c 3 7 11
d 4 8 12

更改成功。

当然,也可以选择暴力更改行名或列名:

df.columns=['onon','twtw','thth']
print(df)
1
2

输出结果为:

onon twtw thth
aa 1 5 9
bb 2 6 10
c 3 7 11
d 4 8 12

总结

到此这篇关于Pandas修改DataFrame列名的两种方法的文章就介绍到这了,更多相关Pandas修改DataFrame列名内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯