首頁 >後端開發 >Python教學 >如何有效地檢查 Pandas 系列是否包含給定清單中的任何子字串?

如何有效地檢查 Pandas 系列是否包含給定清單中的任何子字串?

Susan Sarandon
Susan Sarandon原創
2024-11-30 01:37:10964瀏覽

How Can I Efficiently Check if a Pandas Series Contains Any Substring from a Given List?

測試Pandas 中的字串子字串包含

尋求一種有效的方法來決定Pandas 系列中的字串是否包含任何指定清單子字串?與此相關的查詢如下:

原始查詢:

是否有一個pandas 函數結合了df.isin() 和df[col] 的功能.str. contains()?我的目標是識別一系列包含給定清單中的任何子字串的所有實例。

建議的解決方案:

論壇中建議的一種方法採用了循環和列表理解檢查系列中的每個子字串。然而,存在著更簡潔、更有效率的解決方案。

基於正規表示式的解決方案:

利用正規表示式|運算符,可以建構一個與給定列表中的每個子字串相符的正則表達式。然後可以將此正規表示式與 str.contains 一起使用來過濾序列中所需的值。

這種方法比迭代方法更有效率,可以有效地實現所需的結果。

處理特殊字符:

如果子字串包含具有正則表達式意義的特殊字符,例如作為$ 或^,應使用re.escape() 對它們進行轉義,以確保它們按字面意思解釋。

以上是如何有效地檢查 Pandas 系列是否包含給定清單中的任何子字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn