Chapter 01. 기초 수학
확률 (Probability) -‘일어날 가능성’을 계산하다
1. 확률의 기본 개념
확률은 모든 가능한 결과 중에서 특정 사건이 일어날 수 있는 비율을 나타낸다.
| 예시 | 모든 경우의 수 | 특정 사건 | 확률 |
| 동전 던지기 | 앞 / 뒤 → 2가지 | ‘앞면’ | 1/2 |
| 주사위 던지기 | 1~6 → 6가지 | ‘3이 나올 확률’ | 1/6 |
이때,
- 모든 가능한 결과의 집합 → 표본공간(Sample Space)
- 그중 특정한 결과의 집합 → 사건(Event)
💡 확률은 항상 0 ≤ P(A) ≤ 1 사이의 값이며,
전체 사건의 확률 합은 항상 1이다.
2. 확률과 조합의 관계
확률은 조합을 이용해 더 복잡한 선택 문제를 해결할 수 있다.
즉, 조합으로 경우의 수를 세고, 그 비율을 통해 확률을 구하는 방식이다.
- 예시 ① 뽑기 문제
박스에 ‘꽝’ 종이 4장, ‘선물’ 종이 3장이 들어 있다.
이 중 3장을 뽑을 때 다음의 경우를 구해보자 👇
| 경우 | 조합식 | 계산 | 확률 |
| 꽝 0, 선물 3 | (4C0 × 3C3) / 35 | 1 / 35 | 1/35 |
| 꽝 1, 선물 2 | (4C1 × 3C2) / 35 | (4×3)/35 = 12/35 | 12/35 |
| 꽝 2, 선물 1 | (4C2 × 3C1) / 35 | (6×3)/35 = 18/35 | 18/35 |
| 꽝 3, 선물 0 | (4C3 × 3C0) / 35 | 4 / 35 | 4/35 |
💡 전체 경우의 수 = 7C3 = 35
이때 “꽝 2장 + 선물 1장”의 확률은

3. 응용 예시 - 조건 바꾸기
29_확률
이번엔 ‘꽝’이 5장, ‘선물’이 2장일 때 3장을 뽑는 경우를 계산해보자.
| 경우 | 조합식 | 계산 | 확률 |
| 꽝 3, 선물 0 | (5C3 × 2C0) / 35 | 10 / 35 | 10/35 |
| 꽝 2, 선물 1 | (5C2 × 2C1) / 35 | 20 / 35 | 20/35 |
| 꽝 1, 선물 2 | (5C1 × 2C2) / 35 | 5 / 35 | 5/35 |
💡 조건이 바뀌면, 조합식의 분자 구조만 변하고
전체 경우의 수(7C3)는 그대로 유지된다.
4. 파이썬으로 확률 계산하기
파이썬에서는 math.comb() 함수를 이용해 조합을 계산할 수 있다.
다음은 “꽝 2장 + 선물 1장”을 뽑을 확률을 구하는 예제다👇
import math
# 전체 경우의 수
total = math.comb(7, 3)
# 꽝 2, 선물 1의 경우의 수
fail = math.comb(4, 2)
gift = math.comb(3, 1)
prob = (fail * gift) / total
print(f"확률: {prob:.3f} ({prob*100:.1f}%)")
출력 결과:
확률: 0.514 (51.4%)
💡 math.comb(n, r) 은 “n개 중 r개를 선택하는 조합 수”를 자동 계산해준다.
추가 실습: 다양한 확률 계산
import math
# 5꽝 2선물, 3장을 뽑을 때
total = math.comb(7, 3)
# (꽝 2, 선물 1)
case_1 = math.comb(5, 2) * math.comb(2, 1)
# (꽝 1, 선물 2)
case_2 = math.comb(5, 1) * math.comb(2, 2)
print(f"꽝2,선물1 확률: {case_1/total:.3f}")
print(f"꽝1,선물2 확률: {case_2/total:.3f}")
출력 결과:
꽝2,선물1 확률: 0.571
꽝1,선물2 확률: 0.143
* 이 글은 제로베이스 데이터사이언스 파트타임 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.
💡 생각 정리
이번 강의에서는 확률의 기본 개념이 조합과 연결되는 구조를 명확히 이해할 수 있었다.
특히 ‘뽑기 문제’처럼 복잡해 보이는 확률도,“조합을 이용해 경우의 수를 세면 간단하게 풀린다”는 점이 인상 깊었다.
또한 파이썬 코드로 직접 조합과 확률을 계산해보면서, 이론적인 수학 개념이 실제 데이터 분석이나 시뮬레이션에 바로 적용될 수 있다는 점을 체감했다.
🚀 적용점
- 프로그래밍 활용
- math.comb()를 이용한 확률/조합 문제 자동 계산
- 여러 조건 조합의 확률을 비교하여 시각화 가능 (matplotlib 등)
- 수학적 응용
- 확률 = (성공 경우의 수) / (전체 경우의 수) 원리를 문제 유형별로 익히기
- 조합과 확률을 결합하여 조건부 확률, 베이즈 정리 학습으로 확장
- 데이터 분석 실전 응용
- 추출 확률 계산, 샘플링, 통계적 가설 검정의 기초로 활용 가능
👉 이번 강의는 “확률”의 개념을 직관적으로 이해하고,
이를 조합과 코드로 직접 계산하는 실무형 수학 사고력을 기르는 단계였다.
'데이터' 카테고리의 다른 글
| 제로베이스 데이터사이언스 스쿨 - Part 03. 기초 수학-16 (0) | 2025.11.03 |
|---|---|
| 제로베이스 데이터사이언스 스쿨 - Part 03. 기초 수학-15 (0) | 2025.11.02 |
| 제로베이스 데이터사이언스 스쿨 - Part 03. 기초 수학-13 (0) | 2025.10.31 |
| 제로베이스 데이터사이언스 스쿨 - Part 03. 기초 수학-12 (0) | 2025.10.30 |
| 제로베이스 데이터사이언스 스쿨 - Part 03. 기초 수학-11 (0) | 2025.10.28 |