레이블에 대해서 조건에 맞는 레이블만 필터링하는 메서드이다.
특정 레이블을 이름으로 필터링하거나, 포함된 문자열을 통해 필터링하거나, 정규표현식으로 필터링이 가능합니다.
정규표현식(regular expression)의 경우 regex라고도 하며 파이썬에서는 re 메서드가 지원하는 내용과 동일하다.
DataFrame.filter(items=None, like=None, regex=None, axis=None)
items : 이름으로 필터링. 리스트형태로 입력.
like : str로 필터링. 해당 문자열이 포함된 경우를 반환.
regex : 정규표현식을 이용해 필터링.
axis : {0 : index / 1 : columns} 필터링할 레이블 (0은 행, 1은 열)
이 인수들 중 like 와 regex를 보도록 하겠다.
열 이름에 sepal 문자열을 포함하면 출력
다음과 같은 데이터프레임이 있을 때 특정한 문자가 있는 열만 가져오고 싶다.
예를 들어 sepal(꽃받침)에 대한 정보가 있는 열만 가져오고 싶다면 like 인수를 사용한다.
df.filter(like='sepal') # 열 이름에 sepal 문자열을 포함하면 출력
df.filter(regex='b')
df.filter(regex='^(?!c$).*') # 열 이름이 c가 아닌 경우 출력
df.filter(regex='^b') # b로 시작하는 열 출력
df.filter(regex='x$') # x로 끝나는 열 출력
그 외에도 다음과 같은 정규표현식을 활용할 수 있다.