如何在 Pandas 数据框中添加新列?

简介: 【8月更文挑战第30天】

在 Pandas 中,添加新列是一个常见且重要的操作,可用于扩展数据框并包含更多信息。有几种方法可以向数据框添加新列,具体取决于数据的类型和所需的结果。

方法 1:使用赋值运算符

最简单的方法是使用赋值运算符 (=) 将新列直接分配给数据框。新列的名称将是分配语句的左侧,值将是分配语句的右侧。

import pandas as pd

df = pd.DataFrame({
   'Name': ['Alice', 'Bob', 'Carol'],
                   'Age': [20, 25, 30]})

# 使用赋值运算符添加新列
df['Gender'] = ['Female', 'Male', 'Female']

print(df)

# 输出:
   Name  Age Gender
0  Alice  20  Female
1   Bob  25   Male
2  Carol  30  Female

方法 2:使用 insert() 方法

insert() 方法允许您在指定位置插入新列。它接受以下参数:

  • loc:要插入新列的位置(整数索引)
  • column:新列的名称
  • value:新列的值
# 使用 insert() 方法添加新列
df.insert(1, 'Occupation', ['Student', 'Doctor', 'Teacher'])

print(df)

# 输出:
   Name  Occupation  Age Gender
0  Alice       Student  20  Female
1   Bob        Doctor  25   Male
2  Carol      Teacher  30  Female

方法 3:使用 assign() 方法

assign() 方法允许您使用表达式创建新列。它返回一个具有新列的副本,而不会修改原始数据框。

# 使用 assign() 方法添加新列
df = df.assign(Income=[1000, 2000, 3000])

print(df)

# 输出:
   Name  Occupation  Age Gender  Income
0  Alice       Student  20  Female   1000
1   Bob        Doctor  25   Male   2000
2  Carol      Teacher  30  Female   3000

添加列的注意事项

  • 新列的名称必须是唯一的。
  • 新列的值必须与数据框中的其他列具有相同长度。
  • 如果新列的值类型与现有列不同,则数据框的 dtype 将自动更新为 object
  • 使用 copy=False 参数可以提高 assign() 方法的性能,但可能会产生意外结果。

其他方法

除了上述方法之外,您还可以使用以下方法向数据框添加新列:

  • concat():将两个或多个具有相同索引的数据框连接在一起。
  • join():将两个或多个具有不同索引的数据框基于一个或多个公共键连接在一起。
  • merge():将两个或多个数据框基于一个或多个公共列合并在一起。

这些方法通常用于从其他数据源或数据转换中添加新列。

目录
相关文章
|
索引 Python
如何在 Pandas 中合并数据框?
【8月更文挑战第30天】
291 4
|
存储 关系型数据库 数据库
如何在 Pandas 中合并数据框?
【8月更文挑战第30天】
78 0
|
存储 SQL 数据库
Python 教程之 Pandas(2)—— 创建 Pandas 数据框
Python 教程之 Pandas(2)—— 创建 Pandas 数据框
276 0
|
存储 IDE 开发工具
Python 教程之 Pandas(1)—— Pandas 数据框
Python 教程之 Pandas(1)—— Pandas 数据框
299 0
|
算法 数据挖掘 数据库
Pandas数据框整体操作(中)
引入 俗话说得好,做事和学习要循序渐进。pandas里面数据框整体操作还是非常重要的,上篇主要介绍的是最形象的数据框操作,而本期则偏重综合实践,介绍数据的连接。
Pandas数据框整体操作(中)
|
IDE 开发工具 索引
Pandas数据框整体操作(上)
引入 前面几期我几乎介绍了pandas可能用到的各个基础函数。 但有一个非常重要的内容似乎一直忽视了 包括我近期查阅了许多文章,好像在这部分内容上比较难以讲清楚,没基础的读者很容易云里雾里。 他就是pandas的数据框整体操作
Pandas数据框整体操作(上)
|
Python
推荐Python数据框Pandas视频教程
若要独立用 Python 处理数据科学问题,Pandas 是绕不过去的。 新番 今天,花了一上午的时间,跟着这个 Youtube 系列教程,学习了 Pandas 中级技巧。
1700 0
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
274 1
|
11月前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
312 0
|
11月前
|
存储 数据挖掘 数据处理
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
218 2