본문 바로가기
Python/Pandas & numpy

판다스 : .filter() 함수

by Mr.DonyStark 2024. 2. 8.

□ filter 함수
  ○ 데이터프레임 또는 시리즈에 대해 특정 조건을 적용하여 조건을 만족하는 요소만을 선택하는데 사용
  ○ filter 함수는 주어진 함수 또는 조건을 각 그룹에 적용하고, 각 그룹에서 조건을 만족하는 데이터를 반환
  ○ filter 함수는 그룹화된 객체에 대해 특정 조건을 적용하여 그 조건을 만족하는 그룹만을 선택하는 기능을 수행. 기본적으로, 조건을 만족하는 그룹은 그대로 유지되고, 만족하지 않는 그룹은 제외됨

 

□ 예제

  ○ 데이터불러오기

#라이브러리 불러오기
import numpy as np
import seaborn as sns

#데이터 불러오기
tips = sns.load_dataset('tips')

 

  ○ size 필드의 데이터 분포현황 조회

tips['size'].value_counts()

size 필드에서 1,5,6데이터가 제일 빈도수가 적음

  ○ filter 함수를 활용하여 데이터 필터링

    - lambda 함수를 활용하여 size 필드의 값별 출현개수(빈도수)가 30번을 초과한 것을 조건으로 지정

    - filter 함수로 위에 지정한 조건을 바탕으로 데이터 필터링작업 시행

#lambda함수 지정
tips_filterd = tips.groupby('size').filter(lambda x : x['size'].count() > 30)

#로우데이터 행수 조회
print(tips_filterd.shape)
#필터함수로 가공데이터 행수 조회
print(tips_filterd)

필터링작업을 통해 13개 데이터가 제외됨. 위에 데이터 분포집계를 봐도 1,5,6 합계가 13개인것을 알 수 있음

'Python > Pandas & numpy' 카테고리의 다른 글

판다스 : 데이터 필드 형변환  (0) 2024.02.08
판다스 : .numeric_only, groupby/get_group  (0) 2024.02.08
판다스 : .transform()  (0) 2024.02.08
판다스 : agg 심화  (0) 2024.02.08
판다스 : 전처리 예제(feat. agg함수)  (0) 2024.02.08