eland.Series.es_match#
- Series.es_match(text: str, *, match_phrase: bool = False, match_only_text_fields: bool = True, analyzer: Optional[str] = None, fuzziness: Optional[Union[int, str]] = None, **kwargs: Any) QueryFilter #
根据给定的参数,使用 Elasticsearch 的
match
或match_phrase
查询筛选数据。了解有关 Elasticsearch 中的全文查询 的更多信息
所有其他关键字参数都将传递到匹配查询的主体中。
参数#
- text: str
要搜索的文本字符串
- match_phrase: bool, 默认值为 False
如果为 True,将使用
match_phrase
而不是match
查询,这会考虑text
参数的顺序。- match_only_text_fields: bool, 默认值为 True
当为 True 时,如果查询到任何非文本字段,此函数将引发错误,以防止未分析的字段无法正常工作。设置为 False 以忽略此预防性检查。
- analyzer: str, 可选
指定要用于匹配查询的分析器
- fuzziness: int, str, 可选
指定匹配查询的模糊选项
返回值#
- QueryFilter
要与其他过滤器组合,然后传递到 DataFrame[…]. 的布尔过滤器。
示例#
>>> df = ed.DataFrame( ... "http://localhost:9200", "ecommerce", ... columns=["category", "taxful_total_price"] ... ) >>> df[ ... df.category.es_match("Men's") ... & (df.taxful_total_price > 200.0) ... ].head(5) category taxful_total_price 13 [Men's Clothing] 266.96 33 [Men's Clothing] 221.98 54 [Men's Clothing] 234.98 93 [Men's Shoes, Women's Accessories] 239.98 273 [Men's Shoes] 214.98 [5 rows x 2 columns]