使用Pandas选择包含特定文本的行

使用Pandas选择包含特定文本的行

在数据分析中,Pandas是一个常用的库。有时候,我们需要选择包含特定文本的行进行分析。本文将介绍如何使用Pandas选择包含特定文本的行。

准备工作

我们首先需要安装Pandas库。可以使用以下命令安装:

pip install pandas

安装完成后,可以使用以下代码导入Pandas:

import pandas as pd

接下来,我们需要创建一个包含文本的DataFrame,用于模拟实际情况。以下是一个示例代码:

import pandas as pd

data = {
    '名字': ['张三', '李四', '王五', '赵六'],
    '年龄': [20, 25, 30, 35],
    '城市': ['北京', '上海', '深圳', '广州'],
    '职业': ['医生', '教师', '程序员', '设计师']
}

df = pd.DataFrame(data)

代码中定义了一个字典,包含名字、年龄、城市和职业四个字段。然后,我们使用DataFrame方法创建了一个包含4行数据的DataFrame。

选择包含特定文本的行

选择包含特定文本的行,可以使用DataFrame的str属性和contains()方法。下面是一个示例代码:

import pandas as pd

data = {
    '名字': ['张三', '李四', '王五', '赵六'],
    '年龄': [20, 25, 30, 35],
    '城市': ['北京', '上海', '深圳', '广州'],
    '职业': ['医生', '教师', '程序员', '设计师']
}

df = pd.DataFrame(data)

# 选择城市包含"京"的行
new_df = df[df['城市'].str.contains('京')]

print(new_df)

此处我们选择包含字母“京”的城市所在行。使用str属性和contains()方法后,会对DataFrame中的每一行进行判断,返回True或False,并生成一个布尔类型的Series。然后,我们筛选出包含True的行,也就是包含特定文本的行。

输出结果如下:

  名字  年龄 城市  职业
0  张三  20  北京  医生

忽略大小写

有时候,我们选择包含特定文本的行时,需要忽略文本中的大小写。可以使用case参数进行忽略大小写的查询。以下是一个示例代码:

import pandas as pd

data = {
    '名字': ['张三', '李四', '王五', '赵六'],
    '年龄': [20, 25, 30, 35],
    '城市': ['北京', '上海', '深圳', '广州'],
    '职业': ['医生', '教师', '程序员', '设计师']
}

df = pd.DataFrame(data)

# 忽略大小写选择城市包含"b"的行
new_df = df[df['城市'].str.contains('b', case=False)]

print(new_df)

此处我们选择城市包含字母“b”的行,并忽略大小写。使用contains()方法时,将case参数设置为False即可。

输出结果如下:

  名字  年龄 城市  职业
0  张三  20  北京  医生

多重条件

在实际情况中,我们往往需要同时满足多个条件,才能选择合适的行。可以使用&运算符实现多重条件。以下是一个示例代码:

import pandas as pd

data = {
    '名字': ['张三', '李四','王五', '赵六'],
    '年龄': [20, 25, 30, 35],
    '城市': ['北京', '上海', '深圳', '广州'],
    '职业': ['医生', '教师', '程序员', '设计师']
}

df = pd.DataFrame(data)

# 多重条件选择城市为"深圳"且职业为"程序员"的行
new_df = df[(df['城市'] == '深圳') & (df['职业'] == '程序员')]

print(new_df)

此处我们选择城市为“深圳”且职业为“程序员”的行。使用&运算符可以实现多条件的查询。

输出结果如下:

  名字  年龄  城市    职业
2  王五  30  深圳  程序员

结论

本文介绍了如何使用Pandas选择包含特定文本的行。我们可以使用DataFrame的str属性和contains()方法实现包含特定文本的查询,并使用case参数实现大小写的忽略。在多条件的情况下,可以使用&运算符实现多重条件的查询。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程