Pandas DataFrame 中的部分字符串匹配
基于字符串条件过滤 DataFrame 是数据分析中的常见任务。虽然使用 == 运算符进行精确字符串匹配很简单,但部分字符串匹配需要不同的方法。
一种选择是使用正则表达式,如问题中的代码片段所示:
re.search(pattern, cell_in_question)
但是,对于大型 DataFrame,由于其迭代性质,这种方法可能效率低下。
使用 Pandas Series.str 方法的矢量化解决方案是可用并强烈推荐以获得更好的性能:
df[df['A'].str.contains("hello")]
此方法使用内置的 contains() 函数来检查子字符串是否存在于一系列字符串中。它返回一个可用于过滤 DataFrame 的布尔掩码。
在 Pandas 的早期版本(0.8.1 之前)中,使用了略有不同的语法:
df['A'].apply(lambda x: "hello" in x)
无论如何根据您选择的方法,Pandas DataFrames 中的部分字符串匹配是高效过滤数据的强大工具。
以上是如何在 Pandas DataFrame 中高效执行部分字符串匹配?的详细内容。更多信息请关注PHP中文网其他相关文章!