pandas删除指定列
在使用pandas处理数据时,有时候我们需要删除数据表中的某一列。这在数据清洗和数据处理过程中是非常常见的操作。本文将详细介绍如何使用pandas删除数据表中的指定列。
准备工作
在开始之前,我们首先需要导入pandas库,并创建一个示例数据表。在本文中,我们将创建一个包含学生信息的数据表,其中包括学生姓名、年龄、性别和成绩四个列。
import pandas as pd
data = {
'姓名': ['张三', '李四', '王五', '赵六', '钱七'],
'年龄': [18, 20, 19, 22, 21],
'性别': ['男', '女', '男', '女', '男'],
'成绩': [85, 92, 78, 88, 95]
}
df = pd.DataFrame(data)
print(df)
运行以上代码后,我们得到了一个包含学生信息的数据表:
姓名 年龄 性别 成绩
0 张三 18 男 85
1 李四 20 女 92
2 王五 19 男 78
3 赵六 22 女 88
4 钱七 21 男 95
删除指定列
要删除数据表中的指定列,我们可以使用drop
方法。首先,我们需要明确要删除的列的名称,然后调用drop
方法并指定axis=1
参数来删除列。
假设我们要删除数据表中的年龄列,我们可以按照以下步骤进行操作:
df = df.drop('年龄', axis=1)
print(df)
运行以上代码后,我们得到了删除了年龄列的新数据表:
姓名 性别 成绩
0 张三 男 85
1 李四 女 92
2 王五 男 78
3 赵六 女 88
4 钱七 男 95
多列删除
如果我们需要删除多列,可以直接将要删除的列名组成列表传递给drop
方法。例如,我们要删除性别和成绩两列,可以按照以下步骤进行操作:
df = df.drop(['性别', '成绩'], axis=1)
print(df)
运行以上代码后,我们得到了删除了性别和成绩两列的新数据表:
姓名
0 张三
1 李四
2 王五
3 赵六
4 钱七
原地删除
在上面的示例中,我们使用drop
方法删除列时并未改变原始数据表df
,而是返回了一个新的数据表。如果我们想要在原始数据表的基础上直接删除列,可以使用inplace=True
参数。
下面以删除姓名列为例进行演示:
df.drop('姓名', axis=1, inplace=True)
print(df)
运行以上代码后,我们可以看到原始数据表df
中已经删除了姓名列:
Empty DataFrame
Columns: []
Index: [0, 1, 2, 3, 4]
结论
通过本文的介绍,我们学会了如何使用pandas删除数据表中的指定列。删除列是数据处理过程中的常见操作,能够帮助我们处理和清洗数据。