PROGRESS
3 / 12
단원
넘파이(NumPy) 기초 13
데이터프레임 생성과 편집 9
데이터 탐색과 필터링 12
데이터 집계와 통계 13
데이터 시각화(matplotlib) 10
파일 입출력(CSV, Excel, JSON) 10
전체 목록
QUESTION 03 #294
편의점 음료 데이터에서 칼로리가 100 미만인 데이터를 추출하여 변수 `good`에 저장하고, 그 결과를 출력하려고 합니다. 빈칸에 알맞은 변수명을 순서대로 적으세요.
main.py
import pandas as pd
# 편의점 음료수 데이터 생성
data = {
'음료이름': ['제로콜라', '초코우유', '딸기라떼', '보리차', '에너지드링크'],
'가격': [2000, 1500, 2500, 1200, 2200],
'칼로리': [0, 200, 250, 2, 120],
'용량(ml)': [500, 200, 300, 500, 250]
}
df = pd.DataFrame(data)
# 건강에 좋은 100 칼로리 미만 추출
good = [df['칼로리'] < 100]
# 결과 출력
print([['음료이름', '가격', '칼로리']])
HINT
첫 번째 빈칸은 원본 데이터프레임 이름 df이고, 두 번째 빈칸은 필터링된 결과가 담긴 변수명인 good입니다.
실행 결과 예시
음료이름 가격 칼로리 0 제로콜라 2000 0 3 보리차 1200 2
INTERACTIVE SHELL
Shift + Enter 로 즉시 실행
필터링 결과를 변수에 저장하고 활용하기
필터링한 결과를 변수에 저장하면 이후 다양한 분석에 활용할 수 있습니다.
코드 구조 분석
# 1단계: 조건 필터링 → 변수에 저장
good = df[df['칼로리'] < 100]
# 2단계: 저장된 결과에서 원하는 열만 출력
print(good[['음료이름', '가격', '칼로리']])
동작 과정
| 인덱스 | 음료이름 | 가격 | 칼로리 | < 100 ? |
|---|---|---|---|---|
| 0 | 제로콜라 | 2000 | 0 | True |
| 1 | 초코우유 | 1500 | 200 | False |
| 2 | 딸기라떼 | 2500 | 250 | False |
| 3 | 보리차 | 1200 | 2 | True |
| 4 | 에너지드링크 | 2200 | 120 | False |
결과:
음료이름 가격 칼로리
0 제로콜라 2000 0
3 보리차 1200 2
빈칸의 의미
good = df[df['칼로리'] < 100]
↑ ↑
| └── df: 원본 데이터프레임 (조건식 내부)
└── good: 필터링 결과를 담는 새 변수
print(good[['음료이름', '가격', '칼로리']])
↑
└── good: 필터링된 데이터프레임에서 열 선택
필터링 활용 패턴
# 1. 필터링 후 바로 출력
print(df[df['칼로리'] < 100])
# 2. 변수에 저장 후 추가 분석
good = df[df['칼로리'] < 100]
print(good.shape) # 몇 행인지 확인
print(good['가격'].mean()) # 평균 가격 계산
💡 핵심: 필터링 결과를 변수에 저장하면 재사용이 편리합니다.