Pandas过滤dataframe中包含特定字符串的数据方法

yipeiwu_com7年前Python基础

假如有一列全是字符串的dataframe,希望提取包含特定字符的所有数据,该如何提取呢?

因为之前尝试使用filter,发现行不通,最终找到这个行得通的方法。

举例说明:

我希望提取所有包含'Mr.'的人名

Pandas过滤dataframe 特定字符串

1、首先将他们进行字符串化,并得到其对应的布尔值:

>>> bool = df.str.contains('Mr\.') #不要忘记正则表达式的写法,'.'在里面要用'\.'表示
>>> print('bool : \n', bool)

Pandas过滤dataframe 特定字符串

2、通过dataframe的基本操作将其选取出来:

>>> filter_data = df[bool]
>>> print('filter data : \n', filter_data)

Pandas过滤dataframe 特定字符串

总结:这样就成功将特定数据选取出来了,将代码汇总一下就是

>>> bool = df.str.contains('Mr\.')
>>> filter_data = df[bool]

以上这篇Pandas过滤dataframe中包含特定字符串的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中的匿名函数使用简介

当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便。 在Python中,对匿名函数提供了有限支持。还是以map()函数为例,计算f(x)=x2时,除了定义一个f(...

python批量制作雷达图的实现方法

python批量制作雷达图的实现方法

前言 因为工作需要有时候要画雷达图,但是数据好多组怎么办?不能一个一个点excel去画吧,那么可以利用python进行批量制作,得到样式如下: 首先制作一个演示的excel,评分为ex...

Python实现的合并两个有序数组算法示例

本文实例讲述了Python实现的合并两个有序数组算法。分享给大家供大家参考,具体如下: 思路 按位循环比较两个数组,较小元素的放入新数组,下标加一(注意,较大元素对应的下标不加一),直到...

利用python获取某年中每个月的第一天和最后一天

搜索关键字: python get every first day of month 参考解答: 方法一: >>> import calendar >>...

Python 使用 attrs 和 cattrs 实现面向对象编程的实践

Python 是支持面向对象的,很多情况下使用面向对象编程会使得代码更加容易扩展,并且可维护性更高,但是如果你写的多了或者某一对象非常复杂了,其中的一些写法会相当相当繁琐,而且我们会经常...