📌  相关文章
📜  Pandas:如何在 2 列中删除包含特定字符串的行 (1)

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

Pandas: 如何在 2 列中删除包含特定字符串的行

在使用 Pandas 进行数据分析和处理时,有时需要删除包含特定字符串的行。本指南将介绍如何使用 Pandas 来处理这个问题。

步骤 1: 导入 Pandas

首先,我们需要导入 Pandas 库,使用以下代码行:

import pandas as pd
步骤 2: 创建 DataFrame

接下来,我们需要创建一个 DataFrame 来演示删除包含特定字符串的行的示例。下面是一个简单的示例:

data = {'Name': ['John', 'Mike', 'Sarah', 'Amy'],
        'Age': [25, 30, 28, 32],
        'Country': ['USA', 'Canada', 'USA', 'Australia']}
df = pd.DataFrame(data)

这将创建一个包含 3 列的 DataFrame,其中包括 NameAgeCountry

步骤 3: 删除含特定字符串的行

使用 Pandas 的 str.contains() 函数可以识别包含特定字符串的行。具体步骤如下:

df = df[~df['Country'].str.contains('USA')]

上述代码将删除所有 'Country' 列包含 'USA' 字符串的行,并将结果保存在原始 DataFrame 中。

如果需要删除多列中包含特定字符串的行,可以使用逻辑运算符 & 连接多个条件,例如:

df = df[~(df['Age'] > 28) & (df['Country'] != 'USA')]

上述代码将删除 'Age' 列中大于 28 并且 'Country' 列不等于 'USA' 的行。

完整示例代码
import pandas as pd

data = {'Name': ['John', 'Mike', 'Sarah', 'Amy'],
        'Age': [25, 30, 28, 32],
        'Country': ['USA', 'Canada', 'USA', 'Australia']}
df = pd.DataFrame(data)

df = df[~df['Country'].str.contains('USA')]

这样,我们就成功删除了包含特定字符串的行。

希望这个指南能帮助你在 Pandas 中删除特定字符串的行。详细了解 Pandas 更多功能和用法,请查阅 Pandas 官方文档