当前位置: 代码网 > it编程>前端脚本>Python > Pandas实现重命名列的4种方法

Pandas实现重命名列的4种方法

2024年05月15日 Python 我要评论
pandas dataframe现在已经成为主流。大家都在用它进行数据分析、机器学习、数据工程,甚至软件开发。学习重命名列是数据清洗的第一步,而数据清洗是数据分析的核心部分。我们在这篇文章中来教大家重

pandas dataframe现在已经成为主流。大家都在用它进行数据分析、机器学习、数据工程,甚至软件开发。学习重命名列是数据清洗的第一步,而数据清洗是数据分析的核心部分。我们在这篇文章中来教大家重命名单列或多列名称的四种方法。

  • 方法1:使用rename()函数。

  • 方法2:分配新列名列表。

  • 方法3:替换列属性的字符串。

  • 方法4:使用set_axis()函数。

创建pandas dataframe

将首先创建一个简单的学生班级成绩字典。它由三列组成:idnamegrade,以及五行。

为了将python字典转换为pandas dataframe,将使用pandas dataframe()函数,并使用deepnote(这是一个jupyter notebook云端笔记本)显示结果。

注意:将多次使用student_dict字典来为每个方法创建dataframe。

import pandas as pd

student_dict = {
    "id": [101, 102, 103, 104, 105],
    "name": ["abid", "matt", "karen", "abhijeet", "malena"],
    "grade": ["a", "b", "d", "a", "c"],
}

# 将字典转换为dataframe
student_df_1 = pd.dataframe(student_dict)
student_df_1
idnamegrade
0101abida
1102mattb
2103karend
3104abhijeeta
4105malenac

方法一

第一种方法非常简单,使用pandasrename()函数来重新标记列名。

重命名一个单列

在这个例子中,将使用.rename()来重命名一个单列。只需要向columns参数提供一个新、旧列名的字典。

例如:{"old_column_name" : "new_column_name" }

可以看到,已经成功地用id替换了id

student_df_1.rename(columns={"id": "id"}, inplace=true)

student_df_1

注意:inplace = true意味着正在对dataframe进行修改。它类似于df = df.rename()。

重命名多个列

对于多列,只需提供用逗号(,)分隔的新旧列名字典,它就会自动替换列名。

新的列名是student_idfirst_name,和average_grade

student_df_1.rename(
    columns={"id": "student_id", "name": "first_name", "grade": "average_grade"},
    inplace=true,
)

student_df_1

方法二

第二种方法很简单明了。将通过将新名称的列表分配给dataframe对象的columns属性来重新命名这些列。

例如,使用字典创建了一个新的dataframe,并通过向列属性提供一个字符串列表来重命名列。

student_df_2 = pd.dataframe(student_dict)
student_df_2.columns = ["student_id", "first_name", "average_grade"]

student_df_2

方法三

第三种方法是python生态的原生方法,替换columns属性的字符串。

例如:df = df.columns.str.replace("old_name", "new_name")

已经成功地将列名改为idnamegrades

student_df_3 = pd.dataframe(student_dict)

student_df_3.columns = student_df_3.columns.str.replace("id", "id")
student_df_3.columns = student_df_3.columns.str.replace("name", "name")
student_df_3.columns = student_df_3.columns.str.replace("grade", "grades")

student_df_3

方法四

在第四种方法中,将使用set_axis()函数重命名列。需要提供一个新名称的列表,并设置axis = "columns"来重命名列,而不是索引。

student_df_4 = pd.dataframe(student_dict)
student_df_4.set_axis(["a", "b", "c"], axis="columns", inplace=true)

student_df_4

到此这篇关于pandas实现重命名列的4种方法的文章就介绍到这了,更多相关pandas 重命名列内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

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

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com