欢迎访问宙启技术站
智能推送

如何在DataFrame中添加/删除列

发布时间:2024-01-18 15:36:22

在Python的pandas库中,我们可以使用DataFrame的方法来添加和删除列。DataFrame是一种具有灵活的二维标签数据结构,可以存储和处理列式数据。下面将详细介绍如何在DataFrame中进行列的添加和删除,并通过一些示例来说明。

1. 添加列

要在DataFrame中添加列,可以使用以下方法:

- 直接通过赋值语句创建新的列

- 使用DataFrame的insert()方法

- 使用DataFrame的assign()方法

首先,我们创建一个示例DataFrame,并给它添加一列:

import pandas as pd
 
# 创建示例DataFrame
data = {'Name': ['John', 'Emma', 'David', 'Sophia'],
        'Age': [25, 28, 22, 30]}
df = pd.DataFrame(data)
 
# 添加新列
df['City'] = ['Paris', 'London', 'New York', 'Tokyo']
print(df)

输出结果:

    Name  Age       City
0   John   25      Paris
1   Emma   28     London
2  David   22   New York
3  Sophia  30      Tokyo

在示例中,我们将一个名为'City'的新列添加到DataFrame中。我们通过df['City']的方式将新列称为DataFrame的一部分,并使用赋值语句为每一行设置了相应的值。

如果我们希望在特定位置插入新的列,可以使用DataFrame的insert()方法。该方法需要指定插入位置的索引以及要插入的列的名称和值。下面是一个使用insert()方法添加新列的示例:

df.insert(1, 'Gender', ['Male', 'Female', 'Male', 'Female'])
print(df)

输出结果:

    Name  Gender  Age       City
0   John    Male   25      Paris
1   Emma  Female   28     London
2  David    Male   22   New York
3  Sophia  Female  30      Tokyo

在示例中,我们在索引位置1处插入了一个名为'Gender'的新列。

另一种添加列的方法是使用DataFrame的assign()方法。该方法允许我们基于已有的列创建新的列,并将它们添加到DataFrame中。下面是一个使用assign()方法添加新列的示例:

df = df.assign(University=['Harvard', 'Oxford', 'MIT', 'Stanford'])
print(df)

输出结果:

    Name  Gender  Age       City University
0   John    Male   25      Paris    Harvard
1   Emma  Female   28     London     Oxford
2  David    Male   22   New York        MIT
3  Sophia  Female  30      Tokyo  Stanford

在示例中,我们使用assign()方法创建了一个名为'University'的新列,并根据已有的列为每个元素赋予相应的值。

2. 删除列

要在DataFrame中删除列,可以使用以下方法:

- 使用del关键字删除某个列

- 使用DataFrame的drop()方法

下面是使用del关键字删除列的示例:

# 删除'Gender'列
del df['Gender']
print(df)

输出结果:

    Name  Age       City University
0   John   25      Paris    Harvard
1   Emma  28     London     Oxford
2  David   22   New York        MIT
3  Sophia 30      Tokyo  Stanford

在示例中,我们使用del关键字将'Gender'列从DataFrame中删除。

另一种删除列的方法是使用DataFrame的drop()方法。该方法接受要删除的列的名称作为参数,并返回一个删除了指定列的新DataFrame。下面是一个使用drop()方法删除列的示例:

df = df.drop('University', axis=1)
print(df)

输出结果:

    Name  Age       City
0   John   25      Paris
1   Emma  28     London
2  David   22   New York
3  Sophia 30      Tokyo

在示例中,我们使用drop()方法删除了'University'列,并将删除后的DataFrame重新赋值给df变量。

总结:

本文详细介绍了如何在DataFrame中添加和删除列的方法,并通过示例演示了具体的实现过程。添加列可以使用赋值语句、insert()方法和assign()方法,其中insert()方法可以在指定位置插入新列,assign()方法可以基于已有的列创建新列。删除列可以使用del关键字或drop()方法,其中drop()方法可以删除指定的列并返回新的DataFrame。掌握这些方法可以帮助更好地处理和管理DataFrame中的列数据。