머신러닝 독학의 첫 관문은 수학이 아니라 판다스 입문입니다. 이 글 하나로 Python 최소 문법부터 Pandas로 CSV를 읽고 통계를 내는 것까지, 설치 없이 무료로 끝내는 방법을 정리했어요.
판다스 입문, 머신러닝은 수학부터 시작해야 한다고 생각하셨다면 잠깐만요
선형대수 책을 사고, 미적분 강의를 결제하고, 3주 뒤에 조용히 포기하는 패턴. 데이터 공부를 시작하는 분들에게서 정말 자주 보는 흐름이에요. 저도 예전에 수학 교재부터 폈다가 데이터는 한 줄도 못 만져보고 흥미가 식었던 경험이 있거든요. 그런데 순서를 뒤집으면 이야기가 완전히 달라집니다. Python과 판다스로 데이터를 먼저 만져보고, 수학은 필요할 때 채우는 방식이요.
지난번에 정리했던 머신러닝 독학 완벽 로드맵 글 1단계를 통째로 풀어낸 연재 1화입니다. 프로그래밍이 처음인 비전공자 기준으로, 이 글만 봐도 완결되게 썼어요. 😊
⚡ 이 글의 핵심만 먼저 보기 (Key Takeaways)
- 수학은 나중: ML 입문 성공률을 가르는 건 수학 실력이 아니라 “데이터를 만져본 재미” — 흥미 먼저, 이론은 필요할 때 보충하는 전략이 완주율을 높입니다
- Python은 4가지만: 변수·리스트·반복문·함수만 알면 판다스 입문에 충분해요. 문법 완벽 암기는 오히려 독입니다
- NumPy가 빠른 이유: 반복문 대신 벡터 연산 — 같은 계산이 수십 배 빨라지는 원리를 알면 판다스 코드가 읽히기 시작합니다
- 판다스 실전 5종: read_csv → 결측치 처리 → 필터링 → groupby → 시각화, 이 다섯 동작이 실무 데이터 작업의 80%를 커버합니다
- 비용 0원: Google Colab(설치 불필요) + 점프 투 파이썬 + 테디노트 무료 전자책이면 유료 강의 없이 시작 가능
- 오늘의 액션: Colab 열고 CSV 파일 하나로 기초 통계 내보기 — 이 글 5번 섹션을 그대로 따라 하면 됩니다
📌 목차
- 왜 수학이 아니라 Python·판다스가 먼저인가
- Python 기초 최소셋: 딱 4가지만 챙기세요
- NumPy 핵심: 벡터 연산이 빠른 진짜 이유
- 판다스 입문 실전: read_csv부터 groupby까지
- 미니 실습: CSV 하나로 기초 통계 내보기
- 무료 학습 자료 & 베스트 프랙티스
- 이런 분들께 적극 추천합니다
- 자주 묻는 질문 (FAQ)
1. 왜 수학이 아니라 Python·판다스가 먼저인가
① Interest-First Strategy — 흥미가 완주율을 결정해요
독학의 최대 리스크는 난이도가 아니라 중도 포기입니다. 수학부터 시작하면 “내가 이걸 왜 배우는지”를 체감하기까지 몇 달이 걸려요. 반대로 판다스로 시작하면 첫날부터 실제 데이터가 눈앞에서 정리되는 걸 봅니다. 알고리즘을 배우다 미분이 필요해지면 그때 3Blue1Brown 영상으로 직관을 채우면 되거든요. 순서를 바꾼 것뿐인데 완주율이 달라지는 이유예요.
✅ 오늘 바로 해보기:
구글 계정으로 colab.research.google.com에 접속 → 상단 메뉴에서 ‘새 노트’ 생성 → 가진 CSV 파일 하나를 왼쪽 폴더 아이콘으로 업로드 →import pandas as pd,df = pd.read_csv("파일명.csv"),df.describe()세 줄을 실행해 보세요. 설치도 결제도 없이 브라우저만으로 끝납니다. 수학 강의를 결제하기 전에, 내 데이터가 표로 정리되는 화면을 먼저 보는 게 흥미를 붙이는 가장 빠른 방법이에요.
2. Python 기초 최소셋: 딱 4가지만 챙기세요
① Minimum Syntax Set — 변수·리스트·반복문·함수
판다스를 쓰기 위해 필요한 Python 문법은 생각보다 적어요. 변수, 리스트, 반복문(for), 함수(def) — 이 4가지면 시작할 수 있습니다. 클래스, 데코레이터, 제너레이터 같은 건 지금 몰라도 전혀 문제없어요. 무료 자료인 점프 투 파이썬에서 해당 챕터만 골라 읽는 걸 추천해요. 책 전체를 정독하려다 지치는 게 가장 흔한 함정이거든요.
# 이 정도만 읽고 쓸 수 있으면 판다스 시작 가능
prices = [12000, 15000, 9000] # 리스트
total = 0 # 변수
for p in prices: # 반복문
total += p
def average(nums): # 함수
return sum(nums) / len(nums)
print(average(prices)) # 12000.0
✅ 이렇게 하면 됩니다:
점프 투 파이썬을 1장부터 정독하려 하지 마세요. 목차에서 변수·리스트·반복문(for)·함수(def) 네 챕터만 골라 읽고, 위 예제 코드를 직접 Colab 셀에 쳐 보며 손에 익히는 걸로 충분합니다. 클래스나 데코레이터가 나오는 챕터는 지금 건너뛰세요. 막히는 문법이 나오면 그때 검색해서 채우는 ‘필요할 때 찾기’ 방식이 정독보다 훨씬 빠르게 판다스 단계로 넘어가게 해줍니다.
3. NumPy 핵심: 벡터 연산이 빠른 진짜 이유
① Vectorization — 반복문을 버리면 빨라집니다
NumPy의 핵심은 배열(ndarray) 전체에 연산을 한 번에 거는 벡터 연산이에요. Python 반복문은 요소를 하나씩 해석하며 처리하지만, NumPy는 C로 구현된 내부 루프가 메모리에 연속 배치된 숫자들을 통째로 계산합니다. 그래서 같은 작업이 수십 배 빨라져요. 여기서 핵심이 있어요 — 판다스의 DataFrame이 바로 이 NumPy 배열 위에 만들어져 있다는 점입니다. NumPy의 감각을 잡아두면 판다스 코드가 왜 그렇게 생겼는지 자연스럽게 이해돼요.
import numpy as np
prices = np.array([12000, 15000, 9000])
discounted = prices * 0.9 # 반복문 없이 전체에 10% 할인 적용
print(discounted.mean()) # 10800.0
✅ 직접 속도 차이 확인해보기:
Colab에서 큰 리스트를 만들어(data = list(range(1000000))) for 반복문으로 계산할 때와np.array(data)로 벡터 연산할 때를 비교해 보세요. 셀 맨 앞에%timeit을 붙이면 실행 시간이 자동으로 찍힙니다. 두 방식의 시간을 눈으로 직접 비교하면 “배열을 통째로 계산한다”는 감각이 잡히고, 이 감각이 있으면 판다스 코드가 왜 그렇게 생겼는지 자연스럽게 읽힙니다.
4. 판다스 입문 실전: read_csv부터 groupby까지
1) read_csv & 결측치 — 데이터를 열고 구멍을 메우기
판다스 입문의 첫 동작은 read_csv로 파일을 DataFrame으로 읽는 것이에요. 읽은 직후에는 df.info()와 df.isnull().sum()으로 결측치부터 확인하는 습관을 들이세요. 실무 데이터는 거의 항상 구멍이 나 있고, 이걸 모르고 평균을 내면 결과가 조용히 틀어지거든요. 처리는 dropna()(제거)나 fillna()(채우기) 둘 중 상황에 맞게 고르면 됩니다.
✅ 이렇게 하면 됩니다:
read_csv로 파일을 연 직후 반드시df.info()와df.isnull().sum()을 먼저 실행해 어느 컬럼에 빈칸(NaN)이 있는지 확인하세요. 빈칸을 찾았다면 그 값이 ‘정말 0인지'(예: 무료배송=0) 아니면 ‘모르는 값인지’를 판단해서, 전자는df["컬럼"].fillna(0)로 채우고 후자는df.dropna()로 행을 빼면 됩니다. 이 확인을 건너뛰고 평균을 내면 결과가 조용히 틀어지니, 순서를 습관으로 만들어 두세요.
2) Filtering & groupby — 실무 질문의 80%를 답하는 도구
“서울 지역 주문만”, “카테고리별 평균 매출은” 같은 질문은 전부 필터링과 groupby로 해결돼요. 엑셀의 필터 + 피벗테이블과 같은 개념인데, 코드라서 재실행과 자동화가 됩니다. 마지막으로 plot() 한 줄이면 간단한 시각화까지 끝나요.
import pandas as pd
df = pd.read_csv("orders.csv")
seoul = df[df["region"] == "서울"] # 필터링
summary = df.groupby("category")["sales"].mean() # 그룹 집계
summary.plot(kind="bar") # 시각화
✅ 반복 업무 자동화하기:
매달 손으로 하던 엑셀 집계를 위 세 줄로 바꿔 보세요.groupby집계 코드를 Colab 노트 한 개에 저장해두고, 다음 달에는 새 CSV 파일만 업로드한 뒤 상단 메뉴의 ‘런타임 → 모두 실행’을 누르면 같은 리포트가 그대로 재생산됩니다. 피벗테이블을 매번 새로 만들 필요 없이 파일만 갈아끼우면 되니, 정기 리포트일수록 효과가 큽니다.
5. 미니 실습: CSV 하나로 기초 통계 내보기
① Hands-on in Colab — 설치 0, 지금 바로 따라 하기
Google Colab에 접속해 새 노트를 만들면 준비 끝이에요. 설치도, 비용도 없습니다. 갖고 있는 CSV가 없다면 가계부나 캐글의 Titanic 데이터도 좋아요. 아래 다섯 줄이 오늘의 목표 전부입니다.
import pandas as pd
df = pd.read_csv("my_data.csv")
print(df.head()) # 앞 5행 훑어보기
print(df.isnull().sum()) # 결측치 확인
print(df.describe()) # 평균·표준편차·최솟값·최댓값 한 번에
describe() 결과에서 평균과 중앙값(50%)이 크게 차이 나는 컬럼을 하나 찾아보세요. 왜 차이가 나는지 스스로 질문하는 순간, 이미 데이터 분석을 시작한 겁니다. 이게 생각보다 중요한 이유가 있어요 — 강의를 듣는 것과 내 데이터에 질문을 던지는 건 완전히 다른 학습이거든요. 📊
✅ 오늘의 액션:
가진 CSV(가계부, 캐글의 Titanic 데이터 등) 하나를 Colab에 올리고df.describe()를 돌리세요. 결과 표에서 평균(mean)과 중앙값(50%)이 크게 벌어진 컬럼을 하나 찾고, 왜 벌어졌는지 스스로 물어보세요 — 큰 이상치 몇 개가 평균을 끌어올렸는지, 데이터가 한쪽으로 쏠렸는지. 이 질문을 던지는 순간이 강의를 듣는 것과는 전혀 다른 진짜 데이터 분석의 시작입니다.
6. 무료 학습 자료 & 베스트 프랙티스
① Free Stack — 0원으로 완성하는 학습 환경
| 자료 | 용도 | 비용 |
|---|---|---|
| Google Colab | 실행 환경 (설치 불필요, 브라우저만) | 무료 |
| 점프 투 파이썬 | Python 문법 사전처럼 필요할 때 찾아보기 | 무료 |
| 테디노트 무료 전자책 | 판다스·데이터 분석 한국어 실습 자료 | 무료 |
| Pandas 공식 문서 | 막힐 때 최신 버전 기준으로 확인 | 무료 |
② One Dataset Rule — 문법 암기 대신 데이터 하나 끝까지
베스트 프랙티스는 단순해요. 문법을 완벽히 외우려 하지 말고, 데이터 하나를 붙잡고 끝까지 만져볼 것. 읽기 → 결측치 → 필터 → 집계 → 시각화를 한 데이터로 완주하면, 흩어진 문법이 하나의 흐름으로 연결됩니다. 그리고 오래된 블로그 코드가 안 돌아갈 땐 당황하지 말고 Pandas 공식 문서 최신판을 확인하세요. 버전 차이로 인한 오류는 입문자 좌절 원인 1순위인데, 개념은 자료집으로 배우고 실행 코드는 공식 문서 기준으로 확인하는 이원화가 답이에요.
✅ 막혔을 때 이렇게:
오래된 블로그 코드가 에러를 내면 당황하지 말고 Pandas 공식 문서 검색창에 해당 함수 이름을 그대로 넣어 보세요. 버전이 올라가며 사라지거나 다른 함수로 대체된 경우(예: 예전df.append()→pd.concat())가 입문자 오류의 상당수를 차지합니다. 개념은 무료 자료집으로 익히되, 실행 코드는 항상 공식 문서 최신판 기준으로 확인하는 이원화가 좌절을 줄이는 핵심 습관이에요.
7. 이런 분들께 적극 추천합니다
- 프로그래밍 경험이 전혀 없지만 데이터 직무 전환을 준비 중인 비전공자
- 수학 교재부터 시작했다가 중도 포기한 경험이 있는 머신러닝 입문 재수생
- 엑셀 피벗테이블은 익숙한데 반복 작업을 코드로 자동화하고 싶은 마케터·기획자
- 유료 부트캠프 결제 전에 무료 자료로 적성을 먼저 확인하고 싶은 취업 준비생
- 팀의 데이터 요청을 직접 처리해보고 싶은 영업·운영·재무 직군 실무자
- 자녀나 후배에게 “뭐부터 시작해”라는 질문을 받고 답을 찾던 분
8. 자주 묻는 질문 (FAQ)
Q. 수학을 정말 건너뛰어도 되나요?
A. 완전히 건너뛰는 건 아니에요. 순서를 바꾸는 겁니다. 판다스로 데이터를 만지며 흥미를 붙인 뒤, 알고리즘 학습 단계에서 필요한 수학을 그때그때 3Blue1Brown 같은 시각화 강의로 채우면 됩니다. 다음 화(2화)에서 이 수학 직관 잡기를 다룰 예정이에요.
Q. 컴퓨터 사양이 낮은데 가능할까요?
A. 걱정 안 하셔도 됩니다. Google Colab은 구글 서버에서 코드가 실행되기 때문에 브라우저만 열리면 10년 된 노트북으로도 충분해요. 설치할 것도, 결제할 것도 없이 계정 로그인 → 새 노트 생성 → 코드 입력, 세 단계면 시작됩니다.
Q. 판다스만 익히면 머신러닝을 할 수 있나요?
A. 판다스는 시작점이지 종착점은 아니에요. 다만 실제 ML 프로젝트에서 시간의 절반 이상이 데이터 전처리에 쓰이기 때문에, 판다스 실력은 이후 모든 단계의 토대가 됩니다. 이번 연재는 총 10화로, 수학 직관 → 알고리즘 → 딥러닝 → 캐글 실전 순서로 이어질 예정이에요.
✍️ 글을 마치며
머신러닝 독학의 1단계는 수학 정복이 아니라 데이터 하나를 붙잡고 끝까지 만져보는 경험입니다. Python 문법 4가지, NumPy 벡터 연산의 감각, 판다스 5가지 동작이면 그 경험을 오늘 시작할 수 있어요.
저는 Colab을 열고 제 가계부 CSV에 describe()를 돌려보는 것부터 가장 먼저 해볼 것 같아요. 내 데이터에서 발견한 인사이트만큼 강한 학습 동기는 없더라고요.
여러분은 어떤 데이터를 첫 실습 대상으로 골라보실 건가요? 댓글로 자유롭게 의견 남겨주세요! 😊
- 자료 출처 및 유용한 링크
- 머신러닝 독학 완벽 로드맵 (연재 허브 글)
- Pandas 공식 문서
- NumPy 공식 문서
- 점프 투 파이썬 (무료 전자책)
- Google Colab