[28일차]DataFrame활용 - 범위 지정 필터링(between 메소드)

김준석·2024년 1월 4일
  • **between()**
    • Series의 메소드
    • 주어진 범위 안에 있는 요소를 가진 불리언 시리즈(Boolean Series)를 반환하는 메소드
    • 주어진 시리즈(Series)의 각 요소가 left와 right 사이에 있는 경우에 해당하는 위치에 True를 포함하는 불리언 벡터를 반환.
    • NA 값은 False로 처리
  • 구문

    Series.between(left, right, inclusive='both')

    • left: 왼쪽 경계값.
    • right: 오른쪽 경계값.
    • inclusive: 경계값을 포함할지 여부를 지정하는 매개변수.
      • 기본값은 'both'로, 왼쪽과 오른쪽 경계값을 모두 포함.
      • 그 외로 'left', 'right', 'neither'를 선택 가능.
        • left 좌측 포함
        • right 우측 포함
        • neither 둘다 포함하지 않는다.

실습 환경 구축

# 참조
import pandas as pd

# 데이터프레임 생성
cols = ['name', 'survived', 'pclass', 'fare', 'sex', 'age']
titanic = pd.read_excel('titanic3.xls', usecols=cols, index_col='name')
titanic

**조건문으로 20대 찾기**

1. 마스크를 활용한 20대 찾기

upper_20_mask = titanic['age'] >=20
lower_30_mask = titanic['age'] < 30

titanic[upper_20_mask & lower_30_mask]

2. **between으로 20대 찾기**

**between** 메소드를 이용해 하나의 함수로도 20대를 찾을 수 있다.

age_20s_mask = titanic['age'].between(20,30,inclusive= 'left')

해당 코드를 확인해 보면 inclusive= 'left' 즉 20~30 사이에서 좌측값(20)을 포함하는 데이터를 갖는 함수를 만들었다.

0개의 댓글