📜  删除一系列行 pandas - Python (1)

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

删除一系列行 Pandas - Python

在数据分析中,经常会需要删除一些行数据,以便于后续统计分析工作的进行。本文介绍了如何使用 Pandas 库删除一系列行数据。

示例数据

我们使用以下示例数据来说明。

import pandas as pd

data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Edward', 'Frank'],
        'age': [25, 30, 20, 35, 40, 45],
        'gender': ['F', 'M', 'M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

我们得到的数据是:

       name  age gender
0     Alice   25      F
1       Bob   30      M
2   Charlie   20      M
3     David   35      M
4    Edward   40      M
5     Frank   45      M
删除指定位置的行数据

我们可以使用 drop() 方法删除特定位置的行数据。

df = df.drop([3, 5])

此时,我们得到的数据是:

      name  age gender
0    Alice   25      F
1      Bob   30      M
2  Charlie   20      M
4   Edward   40      M

在上面的方法中,我们传递了一个列表 [3, 5] 作为参数,表示删除第 4 行和第 6 行数据。由于 Pandas 是按 0 开始计数的,所以第 4 行的索引为 3,第 6 行的索引为 5。

按条件删除行数据

我们可以使用 drop() 方法删除符合特定条件的行数据。

df = df.drop(df[df.age > 30].index)

此时,我们得到的数据是:

      name  age gender
0    Alice   25      F
2  Charlie   20      M

在上面的方法中,我们对 DataFrame 进行了条件判断 df.age > 30,得到的是一个布尔型的数组。然后使用 .index 方法获取这些满足条件的行的索引。最后传递给 drop() 方法,将这些行数据从 DataFrame 中删除。

小结

本文介绍了如何使用 Pandas 库中的 drop() 方法删除一系列行数据。我们可以按特定位置或按条件进行删除。在数据分析中,这是一个非常实用的操作,能够帮助我们快速处理数据。