Pandas过滤dataframe中包含特定字符串的数据方法
假如有一列全是字符串的dataframe,希望提取包含特定字符的所有数据,该如何提取呢?
因为之前尝试使用filter,发现行不通,最终找到这个行得通的方法。
举例说明:
我希望提取所有包含'Mr.'的人名
1、首先将他们进行字符串化,并得到其对应的布尔值:
>>> bool = df.str.contains('Mr\.') #不要忘记正则表达式的写法,'.'在里面要用'\.'表示 >>> print('bool : \n', bool)
2、通过dataframe的基本操作将其选取出来:
>>> filter_data = df[bool] >>> print('filter data : \n', filter_data)
总结:这样就成功将特定数据选取出来了,将代码汇总一下就是
>>> bool = df.str.contains('Mr\.') >>> filter_data = df[bool]
以上这篇Pandas过滤dataframe中包含特定字符串的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。