Pandas: 문자열로 시작하지 않는 줄을 선택하는 방법
다음 기본 구문을 사용하여 Pandas DataFrame에서 특정 문자열로 시작하지 않는 행을 선택할 수 있습니다.
df[~df. my_column . str . startswith ((' this ', ' that '))]
이 특정 공식은 my_column 이라는 열이 this 또는 that 문자열로 시작하지 않는 DataFrame의 모든 행을 선택합니다.
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: Pandas에서 문자열로 시작하지 않는 줄 선택
다양한 매장의 판매 정보가 포함된 다음과 같은 pandas DataFrame이 있다고 가정해 보겠습니다.
import pandas as pd #createDataFrame df = pd. DataFrame ({' store ': ['Upper East', 'Upper West', 'Lower East', 'West', 'CTR'], ' sales ': [150, 224, 250, 198, 177]}) #view DataFrame print (df) blind sales 0 Upper East 150 1 Upper West 224 2 Lower East 250 3 West 198 4 CTR 177
다음 구문을 사용하여 Store 열에서 “Upper” 또는 “Lower” 문자열로 시작하지 않는 DataFrame의 모든 행을 선택할 수 있습니다.
#select all rows where store does not start with 'Upper' or 'Lower'
df[~df. blind . str . startswith ((' Upper ',' Lower '))]
blind sales
3 West 198
4 CTR 177
반환되는 유일한 행은 상점 열이 “Upper” 또는 “Lower”로 시작하지 않는 행입니다.
원한다면, Startingswith() 함수 외부에서 문자열 튜플을 정의할 수도 있습니다:
#define tuple of strings
some_strings = (' Upper ', ' Lower ')
#select all rows where store does not start with strings in tuple
df[~df. blind . str . startswith (some_strings)]
blind sales
3 West 198
4 CTR 177
이는 이전 방법과 동일한 결과를 생성합니다.
참고 : 여기에서 pandas의 startwith 함수에 대한 전체 문서를 찾을 수 있습니다.
추가 리소스
다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
Pandas: 문자열 길이를 기준으로 행을 필터링하는 방법
Pandas:열에 문자열이 포함되어 있는지 확인하는 방법
Pandas: GroupBy를 사용하여 문자열을 연결하는 방법