楼主: 时光永痕
649 0

[数据挖掘新闻] 在 Python 中自定义你的列名称 [推广有奖]

  • 0关注
  • 14粉丝

svip3

学术权威

12%

(VIP/贵宾)八级

11%

威望
0
论坛币
26 个
通用积分
57.2238
学术水平
4 点
热心指数
4 点
信用等级
4 点
经验
34180 点
帖子
2732
精华
0
在线时间
321 小时
注册时间
2020-7-21
最后登录
2024-8-1

楼主
时光永痕 学生认证  发表于 2022-8-24 16:47:29 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
除了常规的数据清理和模型管道构建之外,无论是数据科学中的任何专业,个人还需要以一种易于为业务解释的方式产生结果。在本教程中,我们将探索四种场景,在这些场景中,您可以同时对所有数据框列应用不同的转换。
在深入研究场景之前,让我们导入 pandas 库并创建一个名为 df 的数据框,其中包含以下列名称:

week_one_attendance
week_two_attendance
week_three_attendance
week_four_attendance
代码:
  1. import pandas as pd
  2. df = pd.DataFrame (data = [[0.10,0.20,0.70,0.80],[0.80,0.50,0.40,0.20],[0.50,0.10,0.20,0.10],[0.30,0.45,0.97,0.65]],columns = ["week_one_attendance","week_two_attendance","week_three_attendance","week_four_attendance"])

  3. df
复制代码
sengar_customize_data_frame_column_names_python_5.png
方案 1
在下面的代码中,for 循环用于迭代数据框的所有列,在每次迭代中,使用rename方法 将每列转换为大写
  1. for i in df.columns:
  2.      df.rename(columns = {i:i.upper()},inplace = True)
  3. df.columns
复制代码
sengar_customize_data_frame_column_names_python_7.png
情景2

在下面的代码中,我们将声明一个名为columnnames的空字典,然后将另一个名为count 的变量声明为 0

然后,我们将使用for 循环遍历 Data Frame 的所有列,在每次迭代中,count 变量将递增 1。然后将在fstring中使用递增的值来生成新的列名。在每次迭代中,原始列名和新列名将作为键值对添加到字典中。

在使用原始列名和新列名构造字典列名之后,我们将把字典传递给重命名  方法
  1. columnnames = {}
  2. count = 0
  3. for i in df.columns:
  4.   count += 1
  5.   columnnames[i] = f"WEEK_{count}_ATTENDANCE"
  6. columnnames
复制代码
sengar_customize_data_frame_column_names_python_6.png
  1. df.rename(columns = columnnames ,inplace = True)

  2. df.columns
复制代码
sengar_customize_data_frame_column_names_python_9.png
方案 3
在下面的代码中,我们将声明一个名为columnnames的空字典

然后,我们将使用for 循环  遍历 Data Frame 的所有列,其中在每次迭代中,第一次出现的下划线将被无空格替换。在每次迭代中,原始列名和新列名将作为键值对添加到字典中。

在使用原始列名和新列名构造字典列名之后,我们将把字典传递给rename  方法

代码:
  1. columnnames = {}

  2. for i in df.columns:

  3.   x = i.replace('_','',1)

  4.   columnnames[i] = x

  5. columnnames
复制代码
sengar_customize_data_frame_column_names_python_8.png
  1. df.rename(columns = columnnames ,inplace = True)

  2. df.columns
复制代码
sengar_customize_data_frame_column_names_python_2.png
方案 4

在下面的代码中,我们将声明一个名为columnnames的空字典,然后将另一个名为count 的变量声明为 0

然后,我们将使用for 循环遍历 Data Frame 的所有列,其中在每次迭代中,count 变量将递增 1。然后将在fstring中使用递增的值来生成具有位置的新列名第一个词和最后一个词交换了。在每次迭代中,原始列名和新列名将作为键值对添加到字典中。

在使用原始列名和新列名构造字典列名之后,我们将把字典传递给rename  方法
  1. columnnames = {}

  2. count = 0

  3. for i in df.columns:

  4.   count += 1

  5.   columnnames[i] = f"ATTENDANCE_WEEK{count}"

  6. columnnames
复制代码
  1. df.rename(columns = columnnames ,inplace = True)

  2. df.columns
复制代码

结论


通过使用 for 循环和 Python 字符串可用的不同方法,我们能够同时更新数据帧的所有列的值,而不是手动更新每个列名,从而节省大量时间
      相关帖子DA内容精选
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python 自定义 attendance Dataframe CDA LEVEL

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-5 15:01