使用Pandas.drop()从DataFrame中删除行/列-Python

使用Pandas.drop()从DataFrame中删除行/列-Python

Pandas是Python中最重要的数据处理库之一。它提供了许多功能,其中之一是删除DataFrame中的行或列,可以使用Pandas.drop()方法来实现。

在本文中,我们将学习如何使用Pandas.drop()方法从DataFrame中删除行或列,以及在处理数据时需要注意的一些问题。我们还将介绍如何在Jupyter Notebook中使用markdown格式来编写Python代码。

更多Pandas相关文章,请阅读:Pandas 教程

准备工作

在开始本教程之前,请确保您已经正确安装了Pandas包。如果您尚未安装,则可以使用以下命令在命令行或终端中安装:

!pip install pandas

这将确保您安装了最新版本的Pandas包。

数据

在本文中,我们将使用以下数据作为示例:

import pandas as pd

data = {
    'id': [1, 2, 3, 4, 5],
    'name': ['Tom', 'Jerry', 'Mary', 'Jack', 'Rose'],
    'age': [20, 25, 30, 35, 40],
    'gender': ['M', 'M', 'F', 'M', 'F'],
}

df = pd.DataFrame(data)
print(df)

输出结果:

   id   name  age gender
0   1    Tom   20      M
1   2  Jerry   25      M
2   3   Mary   30      F
3   4   Jack   35      M
4   5   Rose   40      F

我们将使用这个DataFrame作为示例数据来说明如何使用Pandas.drop()方法从DataFrame中删除行或列。

从DataFrame中删除行

要删除DataFrame中的行,我们可以使用Pandas.drop()方法并指定行的索引。

下面是一个例子,我们将删除索引为0和2的两行:

df.drop([0, 2], inplace=True)
print(df)

输出结果:

   id   name  age gender
1   2  Jerry   25      M
3   4   Jack   35      M
4   5   Rose   40      F

在以上示例中,我们指定了要删除的行的两个索引:0和2。请注意,在调用Pandas.drop()方法时,inplace参数设置为True,这意味着我们直接修改了原始的DataFrame。

如果您不想修改原始DataFrame,您可以将inplace参数设置为False。以下示例演示了如何将行保存到一个新的DataFrame中:

new_df = df.drop([0, 2], inplace=False)
print(new_df)

输出结果:

   id  name  age gender
1   2  Jerry   25      M
3   4  Jack    35      M
4   5  Rose    40      F

在以上示例中,我们将inplace参数设置为False,并将删除的行保存到一个新的DataFrame中。

从DataFrame中删除列

要删除DataFrame中的列,我们可以指定要删除的列的名称或索引,并将axis参数设置为1。

以下示例演示了如何删除列“gender”:

df.drop('gender', axis=1, inplace=True)
print(df)

输出结果:

   id   name  age
1   2  Jerry   25
3   4   Jack   35
4   5   Rose   40

在以上示例中,我们指定要删除的列的名称为“gender”,并将axis参数设置为1。

您还可以通过索引来删除列,以下示例演示了如何删除列索引为2的列:

df.drop(df.columns[2], axis=1, inplace=True)
print(df)

输出结果:

   id   name
1   2  Jerry
3   4   Jack
4   5   Rose

在以上示例中,我们使用df.columns[2]来指定要删除的列索引,并将axis参数设置为1。请注意,这里的索引从0开始。

注意事项

在使用Pandas.drop()方法从DataFrame中删除行或列时,请注意以下事项:

  • 在删除行或列时,请提供正确的索引或名称。如果给定的索引或名称不存在,则会引发异常。
  • 如果需要修改原始DataFrame,请将inplace参数设置为True。否则,将返回一个新的DataFrame。
  • 当我们删除DataFrame的一行时,我们需要指定行索引,并将axis参数设置为0。
  • 当我们删除DataFrame的一列时,我们需要指定列名称或索引,并将axis参数设置为1。

总结

在本教程中,我们学习了如何使用Pandas.drop()方法从DataFrame中删除行或列。我们通过示例代码演示了如何指定索引或名称以及如何在修改原始DataFrame和不修改原始DataFrame时使用inplace参数。我们还介绍了如何在Jupyter Notebook中使用markdown格式来编写Python代码。希望这篇文章能够帮助您更好地理解如何使用Pandas处理数据。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

Pandas 教程