Czy jest jakaś funkcja, która byłaby odpowiednikiem kombinacji df.isin()
i df[col].str.contains()
?
Na przykład, powiedzmy, że mam serię
s = pd.Series(['cat','hat','dog','fog','pet'])
i chcę znaleźć wszystkie miejsca, w których s
zawiera którekolwiek z ['og', 'at']
, chciałbym uzyskać wszystko oprócz „zwierzaka”.
Mam rozwiązanie, ale jest raczej nieeleganckie:
searchfor = ['og', 'at']
found = [s.str.contains(x) for x in searchfor]
result = pd.DataFrame[found]
result.any()
Czy jest lepszy sposób na zrobienie tego?
pd.Series.str.contains
. Jeśli problemem jest wydajność, warto to zbadać.