[11편] 실전 1 - 엑셀 데이터를 파이썬으로 읽고 필터링하기

 엑셀에서 수천 행의 데이터를 눈으로 직접 확인하며 필터를 거는 것은 시간도 많이 걸릴뿐더러, 실수할 가능성도 큽니다. 파이썬의 강력한 데이터 라이브러리인 'pandas'를 사용하면, 아무리 큰 파일이라도 1초 만에 원하는 데이터만 쏙 뽑아낼 수 있습니다.

1. pandas와 openpyxl 설치하기

먼저 엑셀을 다룰 수 있는 라이브러리를 설치해야 합니다. 명령 프롬프트(CMD)를 열고 다음 명령어를 입력하세요.

pip install pandas openpyxl

  • pandas: 데이터를 표 형태로 다루는 핵심 도구입니다.

  • openpyxl: 엑셀 파일을 읽고 쓰는 엔진 역할을 합니다.

2. 엑셀 파일 읽기 (DataFrame 생성)

pandas에서는 엑셀의 표를 '데이터프레임(DataFrame)'이라는 형식으로 관리합니다.


import pandas as pd

# 엑셀 파일 불러오기
df = pd.read_excel("sales_data.xlsx")

# 상위 5개 데이터 확인
print(df.head())

파일 경로만 정확히 적어주면 엑셀 시트가 파이썬 안으로 쏙 들어옵니다. df.head()는 데이터가 잘 불러와졌는지 확인하는 가장 좋은 방법입니다.

3. 원하는 데이터만 골라내기 (필터링)

이제 필터를 걸어볼 차례입니다. 예를 들어, '판매량'이 100 이상인 데이터만 추출하고 싶다면 아래와 같이 작성합니다.

# 판매량이 100 이상인 행만 추출
filtered_df = df[df['판매량'] >= 100]

# 결과 확인
print(filtered_df)

엑셀에서 '필터' 버튼을 누르고 수치를 입력하는 과정이 단 한 줄의 코드로 해결됩니다. 여기서 df['판매량'] >= 100이라는 조건식은 앞에서 배운 조건문의 논리를 데이터 전체에 한 번에 적용하는 것입니다.

4. 실전 팁: 필터링 결과 저장하기

추출한 데이터를 다시 엑셀 파일로 저장하고 싶다면 to_excel을 사용하세요.

# 필터링된 데이터를 새로운 엑셀 파일로 저장
filtered_df.to_excel("result.xlsx", index=False)

index=False를 써주는 이유는 불필요한 번호 열(행 번호)을 저장하지 않기 위함입니다. 실무에서 보고용으로 파일을 만들 때 깔끔하게 저장하는 꿀팁입니다.

[핵심 요약]

  • pandas 라이브러리를 활용하면 대용량 엑셀 데이터를 빠르게 읽고 처리할 수 있다.

  • 데이터프레임 구조를 사용하여 특정 조건에 맞는 행만 간단히 필터링할 수 있다.

  • 처리한 데이터는 to_excel 함수를 통해 새로운 파일로 간편하게 저장 가능하다.

👉 다음 편에서는 엑셀을 넘어, 웹 페이지에 있는 정보를 자동으로 긁어오는 '웹 크롤링(Web Crawling)'의 기초를 다뤄보겠습니다. 이제 여러분의 자동화 영역은 컴퓨터 내부를 넘어 인터넷 세상으로 확장됩니다.

오늘 배운 pandas 필터링 방식 중, 여러분의 업무에서 "어떤 조건의 데이터를 자주 걸러내시나요?" 예를 들어 "매출이 0인 제품만 찾고 싶다"거나 "지난달 날짜 데이터만 뽑고 싶다"는 등의 사례를 댓글로 알려주세요! 다음번엔 좀 더 복잡한 조건 필터링 예제를 보여드리겠습니다.

댓글 쓰기

0 댓글

신고하기

프로필

이 블로그 검색

이미지alt태그 입력