📌  相关文章
📜  如何通过索引标签删除 Pandas DataFrame 中的行?(1)

📅  最后修改于: 2023-12-03 15:09:17.351000             🧑  作者: Mango

如何通过索引标签删除 Pandas DataFrame 中的行?

Pandas 是基于 Numpy 构建的用于高效处理表格数据的 Python 库。在 Pandas 中,DataFrame 是一个二维的表格数据结构,它具有灵活的索引机制,允许我们使用各种方式来索引和访问数据。在处理 DataFrame 数据时,我们经常需要删除一些行数据,本文将介绍如何通过索引标签删除 Pandas DataFrame 中的行。

通过索引标签删除行

在 Pandas 中,可以通过索引标签来访问和操作 DataFrame 中的数据,每一行数据都有一个唯一的索引标签。我们可以使用 .loc 属性通过索引标签来访问和操作 DataFrame 中的数据。要删除一个或多个索引标签所对应的行,我们可以使用 .drop() 方法,其中 labels 参数指定要删除的索引标签,axis 参数指定要删除的行或列的方向,设为 0 表示删除行,设为 1 表示删除列。

下面是一个例子:

import pandas as pd

# 创建一个 DataFrame
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [24, 32, 18, 47],
        'sex': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data, index=['A', 'B', 'C', 'D'])
print(df)

# 使用索引标签删除一行数据
df = df.drop(labels=['A'], axis=0)
print(df)

# 使用索引标签删除多行数据
df = df.drop(labels=['B', 'C'], axis=0)
print(df)

输出如下:

      name  age sex
A    Alice   24   F
B      Bob   32   M
C  Charlie   18   M
D    David   47   M

      name  age sex
B      Bob   32   M
C  Charlie   18   M
D    David   47   M

    name  age sex
D  David   47   M

在上面的示例中,我们首先创建一个 DataFrame,然后使用 .drop() 方法删除了索引标签为 A、B、C 的三行数据,最后输出了剩余的数据。

总结

在 Pandas 中,通过索引标签删除行数据是一种常见的操作,我们可以使用 .loc 属性选择要删除的行,然后使用 .drop() 方法删除对应的行数据。由于 Pandas 支持多种方式来索引和访问数据,因此在使用 .loc 属性时,需要注意传递的参数类型和格式,以免出错。