📌  相关文章
📜  获取包含给定子字符串的 Pandas DataFrame 中的所有行(1)

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

获取包含给定子字符串的 Pandas DataFrame 中的所有行

在 Pandas 中,可以使用 str.contains 方法检查 DataFrame 中的每一行是否包含给定的子字符串。

以下是获取包含给定子字符串的 Pandas DataFrame 中所有行的示例代码:

import pandas as pd
 
# 创建 DataFrame
df = pd.DataFrame({'姓名': ['张三', '李四', '王五'],
                   '年龄': [21, 25, 30]})
 
# 检查每一行中是否包含 '张' 字符串
condition = df['姓名'].str.contains('张')
 
# 使用布尔索引过滤 DataFrame
result = df[condition]
 
# 打印结果
print(result)

上面的代码将检查 DataFrame 中每一行的 '姓名' 列中是否包含字符串 '张'。然后,使用布尔索引过滤 DataFrame,并返回包含匹配行的 DataFrame。

如果您要获取不包含给定子字符串的行,请使用 ~ 运算符取反布尔索引。

以下是获取不包含给定子字符串的 Pandas DataFrame 中的所有行的示例代码:

import pandas as pd
 
# 创建 DataFrame
df = pd.DataFrame({'姓名': ['张三', '李四', '王五'],
                   '年龄': [21, 25, 30]})
 
# 检查每一行中是否包含 '张' 字符串
condition = ~df['姓名'].str.contains('张')
 
# 使用布尔索引过滤 DataFrame
result = df[condition]
 
# 打印结果
print(result)

上述代码将检查 DataFrame 中每一行的 '姓名' 列中是否不包含字符串 '张'。然后,使用布尔索引过滤 DataFrame,并返回包含匹配行的 DataFrame。

总之,str.contains 方法是一个方便的方法,可用于检查包含或不包含子字符串的 Pandas DataFrame 中的所有行。