Pandas过滤dataframe中包含特定字符串的数据方法
本文介绍如何在Pandas中高效提取包含特定字符串的DataFrame数据。通过演示使用str.contains方法结合正则表达式(如处理点号需转义),生成布尔索引并直接筛选,实现精准数据过滤。
假设有一个DataFrame列,其中所有元素均为字符串类型,现在需要从中筛选出包含指定子字符串的所有记录,应如何实现?
此前尝试使用filter方法未能成功,经过排查后找到了以下可行的解决方案。
具体示例如下:
目标是提取所有名字中包含'Mr.'的记录。

第一步,利用字符串方法将其转换为布尔值序列:
>>> bool = df.str.contains('Mr\.') #不要忘记正则表达式的写法,'.'在里面要用'\.'表示
>>> print('bool : \n', bool)

第二步,利用DataFrame的基础索引操作进行数据选取:
>>> filter_data = df[bool]
>>> print('filter data : \n', filter_data)

总结而言,通过上述步骤即可成功筛选出目标数据。完整代码汇总如下:
>>> bool = df.str.contains('Mr\.')
>>> filter_data = df[bool]
以上关于Pandas过滤包含特定字符串数据的实现方法分享完毕,希望能为读者提供实用参考,并欢迎继续支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









