다중 하위 문자열을 사용하여 Pandas DataFrame에서 하위 문자열 존재 테스트
pandas에서는 df.isin()과 df[col].str을 결합합니다. 문자열에 목록의 하위 문자열이 포함되어 있는지 확인하는 Contains() 작업은 지루할 수 있습니다. 이 기사에서는 정규식과 str.contains() 메서드를 사용하는 대체 솔루션을 제공합니다.
설명하기 위해 ['cat','hat','dog','fog','를 포함하는 시리즈 s를 고려해보세요. 애완 동물']. 'pet'을 제외하고 'og' 또는 'at'을 포함하는 모든 요소를 찾으려면 다음 코드를 사용할 수 있습니다.
searchfor = ['og', 'at'] jointed_regex = '|'.join(searchfor) s[s.str.contains(jointed_regex)]
출력은 다음과 같습니다.
0 cat 1 hat 2 dog 3 fog dtype: object
하위 문자열을 '|'로 결합하여 문자가 있는 경우 str.contains() 메서드는 문자열 요소 내의 모든 하위 문자열과 효과적으로 일치할 수 있습니다.
특수 문자 처리
특수 문자가 포함된 하위 문자열을 처리할 때 주의하세요. $ 또는 ^와 같은 문자는 re.escape()를 사용하여 이스케이프해야 합니다. 이렇게 하면 일치 프로세스 중에 문자가 문자 그대로 해석됩니다.
예를 들어, searchfor에 ['money', 'x^y']가 포함되어 있는 경우:
import re safe_searchfor = [re.escape(m) for m in searchfor] s[s.str.contains('|'.join(safe_searchfor))]
이 코드는 특수 문자를 사용하여 하위 문자열의 정확한 일치를 보장합니다.
위 내용은 Pandas DataFrame 열 내에서 여러 하위 문자열을 효율적으로 확인하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!