我想知道是否有更一般的方法來執行下面的操作?我想知道是否有一種方法來創建st函數,以便我可以搜索非預定義數量的字符串?在沒有預定義字符串數的情況下搜索熊貓中的多個字符串
因此,舉例來說,能夠創造一個廣義ST功能,然後鍵入ST(「總督」,「弗吉尼亞」,「谷歌)
這裏是我當前的功能,但它預定義了兩句話,你可以使用。 (DF是大熊貓數據幀)
def search(word1, word2, word3 df):
"""
allows you to search an intersection of three terms
"""
return df[df.Name.str.contains(word1) & df.Name.str.contains(word2) & df.Name.str.contains(word3)]
st('Governor', 'Virginia', newauthdf)
遺憾是有「或」等同?如果我也想混入或和搜索,我該怎麼做? – user3314418
有兩種方法來處理'OR'。您可以將正則表達式模式與'|'結合使用,如behzad.nouri所示,或者您可以使用'np.logical_or.reduce'。然而,允許用戶輸入正則表達式(可能包含'|'),並使用'search'將正則表達式與'np.logical_and.reduce'結合起來可能是最簡單的。 – unutbu