교육&자기계발

데이터 분석 첫걸음: 판다스 10개 함수면 충분하다

TaylorSong 2025. 12. 22. 08:00

데이터 분석 첫걸음: 판다스 10개 함수면 충분하다

데이터 분석을 배우고 싶지만 어디서부터 시작해야 할지 막막한가요? 복잡한 머신러닝이나 SQL보다, 사실 데이터 분석의 80%는 판다스(Pandas) 몇 가지 함수로 해결됩니다. 오늘은 코딩 초보자도 이해할 수 있는 10개의 핵심 함수로 데이터 분석의 첫걸음을 쉽게 밟아봅니다.

데이터 분석 첫걸음: 판다스 10개 함수면 충분하다
데이터 분석 첫걸음: 판다스 10개 함수면 충분하다

저 역시 데이터 분석을 처음 시작했을 때, 복잡한 문법보다 “이 한 줄이면 된다”는 감각이 훨씬 큰 도움이 되었습니다. 이 글에서는 실제 데이터 예시를 통해 데이터 불러오기, 정리, 요약, 시각화까지 한 번에 익힐 수 있도록 구성했습니다. 딱 10개 함수만 알아도 여러분은 데이터 분석의 핵심 루틴을 손에 넣게 될 거예요.

데이터 불러오기 – read_csv()

데이터 분석의 출발점은 데이터를 불러오는 것입니다. 판다스의 read_csv() 함수는 CSV 파일을 불러올 때 가장 많이 사용됩니다. 엑셀 파일이라면 read_excel(), JSON이라면 read_json()을 사용하면 되죠. 아래 한 줄만으로 로컬 또는 온라인의 데이터를 바로 가져올 수 있습니다.

import pandas as pd
df = pd.read_csv("data.csv")

데이터를 불러온 뒤에는 head() 함수를 사용해 처음 몇 행을 미리 확인할 수 있습니다. 이를 통해 데이터의 형태, 결측값 여부, 열 이름 등을 한눈에 파악할 수 있죠.

데이터 구조 확인 – info()와 describe()

데이터의 크기, 열 이름, 결측값, 데이터 타입 등을 확인하는 데는 info()가 필수입니다. 또한 숫자형 데이터의 평균, 중앙값, 표준편차 등을 확인하려면 describe()를 사용합니다. 두 함수는 분석 전 데이터 품질 점검의 기본 도구입니다.

함수 설명 예시 출력
df.info() 열 이름, 데이터 수, 데이터 타입 등 표시 RangeIndex: 100 entries, 5 columns
df.describe() 수치형 열의 통계 요약 제공 mean, std, min, max 등

원하는 열만 선택 – loc[]와 iloc[]

전체 데이터 중 필요한 열이나 행만 선택하고 싶을 때 loc[]iloc[]를 사용합니다. 전자는 라벨 기반, 후자는 인덱스 기반 선택 방식입니다. 복잡한 SQL 쿼리 없이도 조건에 맞는 데이터를 바로 추출할 수 있습니다.

  • df.loc[:, ['Name', 'Age']] → 특정 열 선택
  • df.iloc[0:5, 0:3] → 첫 5행, 첫 3열 선택
  • df.loc[df['Score'] > 80, ['Name', 'Score']] → 조건에 맞는 행만 선택

조건으로 데이터 필터링 – query()

판다스의 query() 함수는 SQL처럼 직관적인 방식으로 조건문을 적용할 수 있게 해줍니다. ‘나이 30세 이상’, ‘점수 80점 초과’ 같은 조건을 간결하게 쓸 수 있습니다. 복잡한 괄호 대신 문자열로 조건을 표현하므로, 코드 가독성이 높습니다.

df.query("Age >= 30 and Score > 80")

조건문이 길어질수록 query()의 장점은 더욱 두드러집니다. 게다가 내부적으로 최적화되어 속도도 빠르기 때문에 대규모 데이터 필터링에도 자주 사용됩니다.

그룹별 요약 – groupby()

데이터 분석의 핵심 중 하나는 ‘요약’입니다. groupby() 함수는 특정 기준(예: 지역, 성별, 연도 등)에 따라 데이터를 묶고 평균, 합계, 개수 등을 계산합니다. 엑셀의 피벗테이블과 유사하지만 훨씬 유연하고 강력합니다.

예시 코드 설명 결과 예시
df.groupby('Gender')['Score'].mean() 성별별 평균 점수 계산 남: 82.3 / 여: 85.1
df.groupby('Region').sum() 지역별 합계 계산 서울: 1500, 부산: 980 등

간단 시각화 – plot()

판다스는 기본적으로 matplotlib와 연동되어, plot() 함수로 바로 그래프를 그릴 수 있습니다. 복잡한 코드 없이 데이터프레임의 형태만 지정하면 자동으로 시각화됩니다.

  • df['Score'].plot(kind='hist') → 히스토그램으로 분포 확인
  • df.plot(kind='bar') → 카테고리별 막대 그래프
  • df.plot(kind='line') → 시계열 데이터 트렌드 파악

자주 묻는 질문 (FAQ)

Q 판다스는 초보자도 쉽게 배울 수 있나요?

물론입니다. 판다스는 문법이 직관적이고, 엑셀 경험이 있다면 금방 적응할 수 있습니다. 단순한 데이터 처리부터 통계적 분석까지 모두 가능합니다.

Q 판다스와 엑셀의 가장 큰 차이는 무엇인가요?

엑셀은 시각적 조작에 강하지만, 판다스는 대용량 데이터 처리와 자동화에 탁월합니다. 특히 수백만 행 이상의 데이터는 판다스로 훨씬 빠르게 다룰 수 있습니다.

Q 데이터 분석에 꼭 알아야 할 판다스 함수는 몇 개일까요?

기본 분석만 한다면 10개 정도면 충분합니다. read_csv, info, describe, query, groupby, plot 등 핵심 함수만 익혀도 실무 80%를 커버할 수 있습니다.

Q 판다스를 배우기 전에 파이썬을 꼭 알아야 하나요?

기본적인 파이썬 문법(리스트, 딕셔너리, 반복문 등)만 알면 충분합니다. 판다스는 오히려 파이썬보다 직관적이어서 처음 배우기 좋습니다.

Q 판다스로 시각화도 가능한가요?

네, plot() 함수로 막대, 선, 히스토그램, 산점도 등을 그릴 수 있습니다. 더 전문적인 시각화가 필요하면 seaborn이나 matplotlib을 함께 사용하면 됩니다.

Q 실무에서 판다스를 어디에 활용하나요?

매출 분석, 고객 세분화, 로그 데이터 처리, 마케팅 성과 분석 등 거의 모든 분야에서 사용됩니다. 특히 데이터 기반 의사결정 환경에서는 필수 도구입니다.

마무리하며

데이터 분석은 생각보다 멀리 있지 않습니다. 판다스의 10개 핵심 함수만으로도 데이터를 불러오고, 정리하고, 인사이트를 발견할 수 있습니다. 처음엔 익숙하지 않아도, 직접 코드를 입력하며 데이터를 조작하다 보면 어느새 ‘데이터가 말하는 것’을 읽게 됩니다. 무엇보다 중요한 건 완벽한 이해가 아니라, 손으로 직접 해보는 경험입니다.

이제 여러분의 노트북에서 첫 번째 데이터 분석 프로젝트를 시작해보세요. 단 한 줄의 코드가 새로운 통찰로 이어질지도 모릅니다. 데이터는 숫자가 아니라, 이야기를 담고 있으니까요 — 그리고 그 이야기를 꺼내는 도구가 바로 판다스입니다.