使用 Pandas 库可以轻松删除 DataFrame 中含有特定关键词的行。您可以使用 str.contains() 函数来查找包含关键词的行,然后使用 drop() 函数删除它们。

示例代码

import pandas as pd

# 创建一个包含关键词的 DataFrame
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'],
        'age': [25, 30, 35, 40, 45],
        'city': ['New York', 'Los Angeles', 'Chicago', 'Houston', 'San Francisco']}
df = pd.DataFrame(data)

# 删除含有关键词的行
df = df[~df['city'].str.contains('York|Houston')]

print(df)

输出结果:

      name  age         city
1      Bob   30  Los Angeles
2  Charlie   35      Chicago
4      Eva   45  San Francisco

在这个示例中,我们使用了 ~ 运算符来取反,将含有关键词的行删除。如果想要删除全部含有关键词的行,可以使用 drop() 函数:

df = df.drop(df[df['city'].str.contains('York|Houston')].index)

解释:

  • str.contains('York|Houston'):查找 city 列中包含 'York' 或 'Houston' 的行,返回一个布尔型 Series。
  • ~ 运算符:取反操作,将包含关键词的行变为 False,其他行变为 True
  • df[... ]:使用布尔型 Series 筛选 DataFrame,只保留 True 的行。
  • df.drop(...):使用 drop() 函数,删除 df[df['city'].str.contains('York|Houston')].index 指定的行,实现删除包含关键词的行。

总结:

使用 str.contains()drop() 函数可以有效地删除 DataFrame 中包含特定关键词的行,提高数据处理效率。您还可以根据实际需要调整关键词和筛选条件,灵活应用这些函数进行数据清洗和过滤。

Pandas 删除含有关键词的行:高效过滤数据

原文地址: https://www.cveoy.top/t/topic/nyqu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录