부울 조건으로 행 필터링
이 단계에서는 가장 기본적인 필터링 기법인 부울 인덱싱 (boolean indexing) 을 배우게 됩니다. 이 방법은 True와 False 값을 반환하는 Pandas Series 를 생성하는 부울 조건을 만드는 것을 포함합니다. 이 Series 를 DataFrame 에 전달하면 값이 True인 행만 반환됩니다.
먼저 30 세 이상인 모든 직원을 찾기 위해 DataFrame 을 필터링해 보겠습니다.
먼저 왼쪽 편집기에서 main.py 파일을 엽니다. 파일에는 샘플 DataFrame 이 미리 채워져 있습니다.
이제 main.py 하단의 기존 print 문을 다음 코드로 바꿉니다. 이 코드는 df['Age'] > 30이라는 부울 조건을 생성하고 이를 사용하여 DataFrame 을 필터링합니다.
## Filter for employees older than 30
older_than_30 = df[df['Age'] > 30]
print("Employees older than 30:")
print(older_than_30)
이제 완전한 main.py 파일은 다음과 같이 보일 것입니다:
import pandas as pd
import numpy as np
## Create a sample DataFrame
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve', 'Frank'],
'Department': ['HR', 'HR', 'Sales', 'IT', 'IT', 'Finance'],
'Age': [25, 45, 38, 52, 29, 33],
'Salary': [50000, 80000, 75000, 95000, 62000, np.nan]
}
df = pd.DataFrame(data)
## Filter for employees older than 30
older_than_30 = df[df['Age'] > 30]
print("Employees older than 30:")
print(older_than_30)
이제 스크립트를 실행해 보겠습니다. 터미널을 열고 다음 명령을 실행합니다:
python3 main.py
나이가 30 세보다 많은 직원만 나열하는 다음 출력이 표시됩니다.
Employees older than 30:
Name Department Age Salary
1 Bob HR 45 80000.0
2 Charlie Sales 38 75000.0
3 David IT 52 95000.0
5 Frank Finance 33 NaN