pandas dataframe 增加一列

pandas dataframe 增加一列

pandas dataframe 增加一列

1. 前言

在数据分析和处理中,经常会使用到pandas库来处理和操作数据。pandas是一个强大的Python数据分析工具,它提供了DataFrame这个高效灵活的数据结构,能够方便地对数据进行整理、清洗、分析和可视化等操作。

本文将详细介绍如何使用pandas给DataFrame增加一列。通过给出具体的示例代码,并展示运行结果,帮助读者更好地理解和掌握这一操作。

2. 数据准备

首先,我们需要准备一些数据,用来演示如何给DataFrame增加一列。我们将创建一个包含学生信息的DataFrame,包括学生姓名、年龄和性别。

import pandas as pd

# 创建一个字典,包含学生信息
data = {'姓名': ['张三', '李四', '王五', '赵六'],
        '年龄': [20, 21, 19, 22],
        '性别': ['男', '男', '女', '男']}

# 使用字典创建DataFrame对象
df = pd.DataFrame(data)

print(df)

运行以上代码,可以得到以下输出:

   姓名  年龄 性别
0  张三  20  男
1  李四  21  男
2  王五  19  女
3  赵六  22  男

得到了一个包含学生信息的DataFrame。

3. 使用 pandas 给 DataFrame 增加一列

pandas中,给DataFrame增加一列的最基本的方法就是直接通过赋值操作来添加新的列。下面是给DataFrame增加一列的示例代码:

# 给DataFrame增加一列,列名为“分数”,值为[80, 85, 90, 92]
df['分数'] = [80, 85, 90, 92]

print(df)

运行以上代码,可以得到以下输出:

   姓名  年龄 性别  分数
0  张三  20  男  80
1  李四  21  男  85
2  王五  19  女  90
3  赵六  22  男  92

我们可以看到,DataFrame成功地增加了一列“分数”,并且每个学生对应的分数被正确地添加到了对应的行。

4. 根据已有列计算新的列

除了直接赋值添加新的列之外,还可以根据已有的列计算得到新的列。例如,我们可以根据学生的年龄计算其出生年份,并将结果作为新的一列添加到DataFrame中。

下面是根据已有列计算新的一列的示例代码:

# 根据年龄计算出生年份,并将结果作为新的一列添加到DataFrame中
df['出生年份'] = 2022 - df['年龄']

print(df)

运行以上代码,可以得到以下输出:

   姓名  年龄 性别  分数  出生年份
0  张三  20  男  80  2002
1  李四  21  男  85  2001
2  王五  19  女  90  2003
3  赵六  22  男  92  2000

我们可以看到,成功地根据学生的年龄计算得到了新的一列“出生年份”,并添加到了DataFrame中。

5. 使用函数为新列赋值

除了直接赋值和根据已有列计算赋值之外,我们还可以使用函数来为新列赋值。例如,我们可以定义一个函数来判断年龄是否大于等于20岁,然后将判断结果作为新的一列添加到DataFrame中。

下面是使用函数赋值新列的示例代码:

# 定义一个函数,判断年龄是否大于等于20岁
def is_adult(age):
    if age >= 20:
        return True
    else:
        return False

# 使用函数判断学生是否成年,并将结果作为新的一列添加到DataFrame中
df['是否成年'] = df['年龄'].apply(is_adult)

print(df)

运行以上代码,可以得到以下输出:

   姓名  年龄 性别  分数  出生年份  是否成年
0  张三  20  男  80  2002   True
1  李四  21  男  85  2001   True
2  王五  19  女  90  2003  False
3  赵六  22  男  92  2000   True

我们可以看到,成功地根据定义的函数判断了学生是否成年,并将判断结果作为新的一列“是否成年”添加到了DataFrame中。

6. 总结

本文详细介绍了如何使用pandas给DataFrame增加一列。通过给出具体的示例代码,并展示运行结果,读者可以更好地理解和掌握这一操作。

在实际的数据处理中,给DataFrame增加一列是非常常见的操作,能够帮助我们更好地对数据进行分析和处理。掌握这一技巧将对数据分析工作带来很大的便利。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程