본문으로 건너뛰기

교육 ·

비전공자 파이썬 데이터프레임 배우는 법, 엑셀 표가 이렇게 됩니다

엑셀에서 표를 다루다가 파이썬을 배우기 시작한 분이라면 언젠가 반드시 “데이터프레임”이라는 말을 만나게 됩니다. 비전공자 파이썬 데이터프레임 배우는 법을 검색해서 오셨다면, 이미 리스트나 딕셔너리 정도는 다뤄봤거나 pandas라는 이름을 들어본 단계일 가능성이 높습니다. 이 글에서는 데이터프레임이 엑셀 표와 정확히 무엇이 다른지, 실무에서 왜 필요한지, 어떤 순서로 익히면 되는지를 예시와 함께 정리합니다.

데이터프레임이 뭔가요, 엑셀 표랑 다른 게 있나요

데이터프레임은 pandas 라이브러리가 제공하는 2차원 표 형태의 데이터 구조로, 엑셀 시트 한 장과 거의 똑같이 생각하면 됩니다. 다만 엑셀은 화면에서 마우스로 셀을 클릭해 값을 넣지만, 데이터프레임은 코드로 행과 열을 지정해 값을 다룹니다. 그리고 이 차이 덕분에 수만 행짜리 데이터도 코드 몇 줄로 한 번에 정리할 수 있다는 게 가장 큰 장점입니다.

엑셀에서 흔히 하는 작업을 떠올려 보면 이해가 쉽습니다. 특정 조건에 맞는 행만 걸러내기(필터), 특정 열 기준으로 정렬하기, 여러 시트를 하나로 합치기, 부서별로 합계 구하기(피벗 테이블) 같은 작업들입니다. 데이터프레임은 이 모든 작업을 코드 한 줄에서 몇 줄로 처리하며, 파일이 아무리 커져도 속도가 크게 느려지지 않습니다.

import pandas as pd

# 엑셀 파일을 읽어서 데이터프레임으로 변환
df = pd.read_excel("직원명단.xlsx")

# 표의 첫 5행 확인 (엑셀에서 스크롤해서 보는 것과 같은 느낌)
print(df.head())

# 열 이름과 데이터 타입 확인
print(df.info())

read_excel 한 줄이면 엑셀 파일 전체가 데이터프레임 변수 df에 들어옵니다. 이 시점부터는 엑셀 화면을 보지 않고도 코드로 표를 자유롭게 다룰 수 있습니다.

실무에서 가장 많이 쓰는 데이터프레임 조작 세 가지

데이터프레임을 처음 배울 때는 모든 기능을 외우려 하지 말고, 실무에서 반복적으로 쓰는 세 가지 동작만 확실히 익히는 게 효율적입니다. 조건으로 걸러내기, 필요한 열만 골라 보기, 그룹별로 집계하기입니다. 이 세 가지만 익혀도 매달 반복하던 엑셀 수작업의 상당수를 대체할 수 있습니다.

조건으로 걸러내기 (엑셀 필터에 해당)

# 부서가 "영업팀"인 행만 걸러내기
sales_team = df[df["부서"] == "영업팀"]

# 근속연수가 3년 이상인 행만 걸러내기
senior = df[df["근속연수"] >= 3]

필요한 열만 골라 보기

# 이름, 부서, 연락처 열만 선택
contact_list = df[["이름", "부서", "연락처"]]

그룹별로 집계하기 (엑셀 피벗 테이블에 해당)

# 부서별 평균 근속연수 구하기
avg_by_dept = df.groupby("부서")["근속연수"].mean()

# 부서별 인원수 세기
count_by_dept = df.groupby("부서").size()

이 세 가지 패턴은 엑셀 피벗 테이블을 코드로 옮긴 것과 거의 같습니다. 이미 엑셀 피벗 테이블을 다뤄본 분이라면 groupby 개념을 훨씬 빠르게 이해할 수 있습니다.

데이터프레임 핵심 정리

데이터프레임을 배우기 전에 리스트와 딕셔너리부터 알아야 할까요

네, 순서상 리스트와 딕셔너리를 먼저 익히는 게 좋습니다. 데이터프레임은 내부적으로 여러 개의 열이 딕셔너리처럼 이름으로 관리되고, 각 열의 값은 리스트처럼 순서대로 저장되는 구조이기 때문입니다. 기초 자료구조를 모르고 데이터프레임만 외우면 에러가 났을 때 원인을 파악하기 어렵습니다.

실제로 pandas 데이터프레임은 여러 개의 시리즈(Series)가 모인 형태이고, 시리즈는 파이썬 딕셔너리파이썬 리스트의 성격을 함께 가지고 있습니다. 예를 들어 열 이름으로 데이터에 접근하는 방식(df["부서"])은 딕셔너리에서 키로 값을 꺼내는 방식과 똑같습니다. 그래서 리스트와 딕셔너리를 먼저 다뤄본 사람은 데이터프레임 문법을 훨씬 자연스럽게 받아들입니다.

학습 순서, 어떤 것부터 실습해야 할까요

처음부터 실무 데이터로 연습하면 문법과 데이터 문제가 섞여서 어디서 막혔는지 알기 어렵습니다. 아래 순서로 단계를 나눠 진행하는 것을 권합니다.

  1. 작은 표(행 10개 이하)를 직접 딕셔너리로 만들어 데이터프레임으로 변환해보기
  2. 실무에서 쓰던 엑셀 파일 하나를 read_excel로 불러와 head(), info()로 구조 확인하기
  3. 조건 필터링, 열 선택, groupby를 각각 따로 연습하기
  4. 위 세 가지를 조합해 실제로 매달 만들던 보고서 하나를 데이터프레임으로 재현해보기
  5. 결과를 to_excel()로 다시 엑셀 파일로 저장해 기존 업무 방식과 연결하기

이 단계를 거치면 데이터프레임이 추상적인 개념이 아니라 지금 하고 있는 업무의 연장선이라는 걸 체감하게 됩니다. 특히 5번 단계에서 결과를 다시 엑셀로 저장하면, 파이썬으로 처리한 결과를 팀원들과 기존 방식 그대로 공유할 수 있어 실무 도입 장벽이 낮아집니다.

데이터프레임 다음에는 무엇을 배워야 할까요

데이터프레임을 다룰 수 있게 되면 자연스럽게 두 방향으로 확장하게 됩니다. 하나는 여러 파일을 자동으로 취합하고 정리하는 방향이고, 다른 하나는 정리한 데이터를 그래프로 시각화하는 방향입니다. 전자는 엑셀 반복 업무를 파이썬으로 자동화하는 방법에서, 후자는 파이썬으로 데이터 시각화를 시작하는 방법에서 각각 다루고 있으니 이어서 살펴보시면 좋습니다. 또한 데이터가 지저분한 상태라면 데이터프레임으로 옮기기 전에 데이터 클렌징 개념을 먼저 이해해두는 것도 도움이 됩니다.

데이터프레임은 처음 볼 때는 낯설지만, 결국 엑셀 표를 코드로 다루는 방법일 뿐입니다. 매달 똑같은 형식으로 반복되는 보고서나 여러 파일을 취합하는 업무가 있다면, 그 업무 하나를 데이터프레임으로 옮겨보는 것부터 시작하는 게 가장 빠른 학습법입니다. 픽셀앤코드는 비전공 실무자를 위한 파이썬·데이터 분석 교육을 진행하며, 각 기업의 실제 업무 데이터를 기반으로 실습을 구성해 학습 이후 곧바로 현업에 적용할 수 있도록 돕고 있습니다.