brunch

04. 쉽게 보는 확률 이야기

Data 실습과 함께 하는 Basic Probability

by HyehwaYim






Review


안녕하세요? 우리는 지난 시간에 데이터 읽기의 기초(2)편을 학습했습니다. 데이터의 중심, 데이터의 퍼짐(산포도), 데이터의 변동성(분산과 표준편차), 데이터의 비대칭성(왜도)을 살펴봤습니다. 이 개념들은 기술통계를 이해하는 데 있어 매우 중요한 개념들이라고 할 수 있습니다.


[데이터의 퍼짐]과 관련하여 산포도(Dispersion)를 살펴보았습니다. 데이터의 중심만 보면 데이터의 다양성이 가려지기 때문에 "얼마나 흩어져 있는가?"를 함께 보는 것이 중요합니다. 데이터의 산포도와 관련하여 범위(Range), 사분위수(Quartile), IQR(Interquartile Range)를 살펴보았습니다.


범위는 최댓값에서 최솟값을 뺀 값으로 전체 데이터의 폭을 간단히 확인할 수 있는 지표입니다. 사분위수는 데이터를 4등분한 각각의 위치를 표현한 것으로 Q1은 하위 25%, Q2는 중앙값 50%, Q3는 상위 75%를 나타냅니다. IQR은 Q3에서 Q1을 뺀 값으로 데이터 중간 50%의 분포를 나타내며, 상한/하한의 이상치를 판단하는 기준으로 활용됩니다.


[데이터의 변동성]과 관련하여 분산(Variance)표준편차(Standard deviation)을 살펴보았습니다. 분산은 각 데이터가 평균으로부터 얼마나 떨어져 있는지 제곱하여 평균을 낸 값입니다. 단위가 제곱이기 때문에 직관적으로 알기는 어렵습니다. 표준편차는 분산에 제곱근을 취하여 원래 단위로 되돌린 값입니다. 표준편차는 데이터가 평균 근처에 모여 있는지, 흩어져 있는지를 알려주는 지표라고 할 수 있습니다. 모집단 분산과 표본의 분산을 계산하는 데 있어 표본의 분산은 ① 자유도(Degree of freedom)와 ② 편향 보정(Bias correction)을 위해 모집단 분산 계산과 달리 분모를 (n-1)로 취합니다.


[데이터의 비대칭성]과 관련하여 왜도(Skewness)의 개념을 살펴보았습니다. 왜도는 데이터가 한쪽으로 얼마나 치우쳐 있는지를 나타내는 지표입니다. 왜도=0이라면, 데이터의 분포가 좌우 대칭으로 정규분포에 근사합니다. 왜도>0이라면, 데이터의 분포가 오른쪽으로 긴 형태(Positive skew)로, 높은 값들이 길게 늘어져 있습니다. 왜도<0이라면, 데이터의 분포가 왼쪽으로 긴 형태(Negative skew)로, 낮은 값들이 길게 늘어져 있습니다.


왜도를 계산할 때는 각 데이터의 평균으로부터의 차이를 표준화(표준편차로 나눔)하고, 세제곱을 합니다. 세제곱을 하는 이유는 ① 데이터 분포의 방향(좌/우)을 유지하기 위해 부호를 살리고, ② 평균에서 멀리 떨어진 값의 영향력을 더 크게 보기 위해서입니다. 또, 보정계수 [n/(n-1)(n-2)]를 적용하는 이유는 표본의 평균과 표준편차가 이미 한 번씩 자유도를 소모하기 때문에 두 단계의 누적된 편향을 보정하기 위함입니다.


오늘의 학습 방향


오늘은 추론통계로 접어들기 전에 확률(Probability)을 이야기하려 합니다. 통계의 세계에서 확률은 단순히 운이나 우연이 아니라, 미래를 예측하기 위한 수학적인 언어입니다. HR 데이터 분석에서도 "이미 일어난 일"을 정리하는 기술통계만으로는 부족합니다. 우리가 정말로 알고 싶은 건 "앞으로 어떤 일이 일어날 가능성이 있는가?"이기 때문입니다. 그 가능성을 정량적으로 다루는 것이 바로 확률인 셈입니다.


이번 시간에는 간단한 HR 데이터 샘플을 통해 확률의 기본 개념을 익히고, Excel을 활용하여 실제로 계산을 해보겠습니다. 이번 학습의 목표는 다음과 같습니다.


사건(Event)과 확률(Probability)의 기본 개념을 이해한다.

여사건(Complement), 결합확률(Joint Probability), 조건부확률(Conditional Probability의 개념을 이해하고 계산한다.

HR 데이터 샘플을 활용하여 직접 확률을 계산한다.

계산 결과를 해석하여 확률 개념을 체화한다.

자, 그럼 시작하겠습니다.



HR 데이터 샘플


예시로 사용할 데이터는 120명 직원에 대한 HR 데이터입니다. 그리고 각 Column은 다음과 같습니다.


EmpID: 직원의 고유 ID

Dept: 부서(Engineering, Sales, Operations)

Gender: 성별(Male/Female)

Level: 직급(Jr/Mid/Sr)

Overtime: 야근 여부(Yes/No), 'OT'

Training_Hours: 교육 시간(시간 단위)

Performance_Rating: 성과등급 여부(1~5등급)

Attrition: 이직 여부(Yes/No), 'Att'






01. 사건과 확률(Event & Probability)


확률은 "어떤 일이 일어날 가능성"을 숫자로 표현한 것입니다. 다만, 그 '가능성'이란 부분은 바라보는 관점에 따라 두 가지가 있습니다. 하나는 이론적 확률(Theoretical Probability), 다른 하나는 경험적 확률(Empirical Probability)입니다.


이론적 확률은 말 그대로 "실험하지 않아도 계산할 수 있는 확률"입니다. 예를 들어, 동전을 던졌을 때 앞면이 나올 확률은 1/2입니다. 동전이 물리적으로 대칭이라는 사실만으로 이 확률을 구할 수 있습니다.


반면, 경험적 확률은 "실제 관찰된 빈도"를 바탕으로 합니다. 동전을 100번 던져 48번의 앞면이 나왔다면, 앞면이 나올 경험적 확률은 48/100=0.48입니다.


이처럼 경험적 확률은 실제 데이터를 기반으로 "전체 중 특정 조건을 만족하는 비율"로 해석할 수 있습니다. 통계학의 큰 수의 법칙(Law of Large Numbers)에 따르면, 시행 횟수가 충분히 많아질수록 경험적 확률은 이론적 확률에 근사하게 됩니다. 즉, 동전을 10번 던져서 0.7의 확률로 앞면이 나올 수도 있지만, 1,000번 던지면 점차 0.5로 수렴하게 된다는 것입니다.



이제부터 다룰 확률은 경험적 확률에서의 관점입니다. 즉, 전체 N명 중에서 특정한 조건을 만족하는 사람의 비율을 말합니다. 공식은 P(A)=(조건 A를 만족하는 수) / N입니다.


예를 들어 전체 직원 중 이직한 직원의 비율을 구한다고 가정해 봅시다. 즉, P(Attrition=Yes)를 계산하는 것입니다. HR 데이터 샘플에서 전체 직원의 수는 120명입니다. 'EmpID'(B열)를 보면, 3행부터 122행까지로 구성되어 있음을 알 수 있습니다. Excel에서 COUNTA(B3:B122)로 계산할 수 있습니다. 이직한 직원의 경우 'Attrition'(I열)에서 "Yes"로 구분되어 있습니다. Excel에서 COUNTIF(I3:I122,"YES")로 계산할 수 있습니다. 계산을 해보면, 이직한 직원의 수는 22명입니다. 따라서 P(A)=22/120=0.1833(≒18.3%)입니다.


또 다른 예를 들어보겠습니다. 전체 직원 중 야근한 직원의 비율을 구한다고 가정해 봅시다. 야근한 직원의 경우 'Overtime'(F열)에서 "Yes"로 구분되어 있습니다. Excel에서 COUNTIF(F3:F122,"YES")로 계산할 수 있습니다. 계산을 해보면, 야근한 직원의 수는 53명입니다. 따라서 P(A)=53/120=0.4416(≒44.2%)입니다.




02. 여사건(Complement Event)


여사건이란 "어떤 사건이 일어나지 않은 경우"를 말합니다. 수식으로는, P(A^C)=1-P(A)로 표현합니다. 위의 예시에서 전체 직원 중 이직하지 않은 직원의 비율은 이직한 사람의 반대의 사건으로 여사건에 해당합니다. P(Att=Yes)=0.1833이었습니다. 따라서 P(Att=No)=1-0.1833=0.8167(≒81.7%)입니다.


또 전체 직원 중 야근을 하지 않은 직원의 비율도 야근한 사람의 반대의 사건으로 여사건에 해당합니다. P(OT=Yes)=0.4416이었습니다. 따라서 P(OT=No)=1-0.4416=0.5834(≒58.3%)입니다.


이처럼 확률의 전체집합은 언제나 1(100%)이며, 사건 A와 여사건 A^C는 서로 보완관계입니다.




03. 결합확률(Joint Probability)


결합확률은 두 사건이 동시에 일어날 확률을 말합니다. 수식은 [P(A∩B)=(A와 B가 동시에 일어나는 횟수)/N] 입니다. 예를 들어, "야근도 하고(OT=Yes), 이직한(Att=Yes) 직원의 비율"을 구하면, 그것이 바로 결합확률입니다. 이와 같이 하나 이상의 사건이 동시에 일어나는 조건을 만족하는 값을 구할 때는 Excel에서 Pivot table을 활용하는 것이 효율적입니다. HR 데이터 샘플을 Pivot table로 변환하여 [행]에는 OT, [열]에는 Att, [∑값]에는 EmpID를 넣으면 다음과 같이 나옵니다.



위 table에서 사건 A(OT=Yes)와 사건 B(Att=Yes)가 동시에 일어난 EmpID는 16명임을 알 수 있습니다. 전체 직원의 숫가 120명이므로, P(A∩B)=16/120=0.1333(≒13.3%) 입니다.


Excel에서 Pivot table을 활용하지 않고, COUNITFS 함수를 활용하는 방법도 있습니다. Overtime의 현황을 나타내는 Column은 F열이고, Attrition의 현황을 나타내는 Column은 I열입니다. 각각의 열은 Yes/No의 값으로 구분이 되어 있습니다. 따라서 COUNTIFS(F3:F122,"Yes",I3:I122,"Yes")=16이 됩니다.




04. 조건부확률(Conditional Probability)


조건부확률은 "사건 B가 일어났을 때 A가 일어날 확률"입니다. 수식은 [P(A|B)=P(A∩B)/P(B)] 입니다. 예를 들어, "야근을 한 직원 중에서 이직한 직원의 비율"을 구한다고 가정해 봅시다.


이 경우, P(A∩B)=0.13333, P(B)=0.4417입니다. 따라서 P(AㅣB)= 0.13333/0.4417= 0.3019 (≒30.2%) 입니다. 즉, 야근한 직원의 약 30%가 이직을 했다는 의미입니다.



Excel의 Pivot table을 활용하여 다시 확인해 보겠습니다. 위 표에서 OT=Yes인 직원의 수는 53명입니다. 이 중에서 Att=Yes의 조건을 충족하는 직원의 수는 16명입니다. 따라서 16/53=0.3018이 됩니다.




05. 독립관계와 종속관계: 야근과 이직


두 사건 A와 B가 독립(Independent)이라는 것은 "B가 일어나도 A의 확률에 영향을 주지 않는다"는 뜻입니다. 동전의 앞면(B)과 내일 비가 올지(B)는 서로 무관합니다. 반면, 두 사건이 종속(Dependent)이라면, 한 사건이 다른 사건의 확률에 영향을 주게 됩니다. HR 데이터 샘플에서 야근(OT=Yes)이 이직(Att=Yes)의 확률을 높이는 종속관계일 수 있습니다.


만약, 두 사건이 완전히 독립이라면 다음의 조건이 모두 성립하게 됩니다.

P(AㅣB)=P(A∩B)/P(B)=P(A)

P(BㅣA)=P(A∩B)/P(A)=P(B)

P(A∩B)=P(A)×P(B)

우리가 계산한 데이터 값은 다음과 같습니다.

P(A)=0.1833, P(B)=0.4416, P(A∩B)=0.1333

P(AㅣB)=0.3019, P(BㅣA)=P(A∩B)/P(A)=0.1333/0.1833=0.7273

즉, P(AㅣB)≠P(A), P(BㅣA)≠P(B), P(A∩B)≠P(A)×P(B) 입니다. 결과적으로, 야근과 이직은 서로 영향을 미치는 종속적 관계로서 해석할 수 있습니다.




06. 베이즈 정리(Bayes' Theorem)


조건부확률은 '방향'이 중요합니다. 앞선 예시에서 "야근한 직원 중 이직한 사람의 비율"과 "이직한 사람 중 야근한 직원의 비율"은 서로 다릅니다. 현실에서는 우리가 알고 있는 확률의 방향이 항상 원하는 형태가 아닐 수 있습니다. 이러한 경우에 베이즈 정리(Bayes' Theorem)를 이용하면, 이미 우리가 알고 있는 확률을 뒤집어서 계산할 수 있습니다.


예를 들어, 우리가 알고 있는 정보가 P(AttㅣOT), P(OT=Yes), P(Att=Yes)일 때, 우리가 구하고 싶은 값은 P(OT=YesㅣAtt=Yes) 입니다. 이럴 경우 P(BㅣA)=P(AㅣB)×P(B)/P(A)의 공식으로 계산할 수 있습니다. P(AㅣB)=0.3019, P(B)=0.4416, P(A)=0.1833이므로, P(BㅣA)는 다음과 같습니다.


P(BㅣA)=0.3019×0.4416/0.1833≒0.7273(약 72.7%)


즉, 이직자 중에서 약 73%가 야근을 한 경험이 있다는 의미입니다.



Summary


확률은 '일어날 수 있는 일의 가능성을 숫자로 표현한 언어'입니다. HR 데이터를 분석할 때, 확률은 단순히 이직률이나 평가등급의 비율, 야근한 직원의 비율 등의 수치를 넘어서 "왜 어떤 일이 일어났는지, 그리고 앞으로 어떤 일이 일어날 수 있는지"를 생각하게 만드는 기초 정보를 제공해 줄 것입니다.


지금까지 'Statistics for HR'을 위한 기술통계 및 확률의 기초적인 부분을 다뤄봤습니다. 앞으로는 추론통계의 영역으로 나아가고자 합니다. 이를 위한 준비부터 실제 추론통계에서 다뤄지는 다양한 검정 방법들을 하나씩 살펴보도록 하겠습니다.













keyword