데이터분석
분석을 위한 통계(Statistics)1
DEDS
2025. 4. 10. 17:11
728x90
탐색적 데이터 분석(EDA)에서 통계는 데이터의 특성을 이해하는 데 중요한 역할을 합니다.
통계 개념은 추가 분석이나 모델링을 수행하기 전에 데이터를 더 잘 요약, 설명 및 해석하는 데 사용됩니다.
EDA에서 자주 사용되는 몇 가지 주요 통계 개념에 대해 설명드리겠습니다.
1. 기술적 통계( Descriptive Statistics)
중심 경향 측도 (Measures of Central Tendency):
- 평균(Mean):
데이터셋에 포함된 모든 값의 산술 평균을 계산합니다. - 중앙값(Median):
정렬된 데이터셋에서 중앙에 위치한 값으로, 정규분포가 아니거나 이상치가 있는 데이터에 적합합니다. - 최빈값(Mode):
데이터셋에서 가장 자주 나타나는 값으로, 범주형 데이터(categorical data)에서 유용하게 사용됩니다.
산포도 측도 (Measures of Dispersion):
- 범위(Range):
데이터셋에서의 최대값과 최소값의 차이입니다. - 분산(Variance):
각 데이터 값이 평균으로부터 얼마나 떨어져 있는지를 나타내는 지표입니다. - 표준편차(Standard Deviation):
분산의 제곱근으로, 데이터가 평균을 중심으로 얼마나 퍼져 있는지를 나타냅니다. - 사분위 범위(IQR, Interquartile Range):
**제1사분위수(Q1)와 제3사분위수(Q3)의 차이로, 이상치(outliers)를 탐지하는 데 유용하게 사용됩니다.
2. 데이터 분포 (Data Distribution)
- 정규분포(Normal Distribution):
대부분의 데이터가 평균을 중심으로 대칭적으로 분포하는 종 모양의 분포입니다.
고급 통계 분석에서는 정규분포를 가정하는 경우가 많습니다. - 왜도(Skewness):
데이터 분포의 비대칭성(asymmetry) 정도를 나타냅니다. - 양의 왜도(Positive Skew):
분포의 꼬리(tail)가 오른쪽으로 길게 늘어져 있는 경우 (우측 왜도).
이는 수익, 대기 시간, 주택 가격 등 실생활의 많은 변수에서 자주 나타나는 분포입니다.
- 음의 왜도(Negative Skew):
분포의 꼬리(tail)가 왼쪽으로 길게 늘어져 있는 경우 (좌측 왜도).
- 첨도(Kurtosis):
분포의 꼭대기(peak)가 얼마나 뾰족한지를 나타냅니다. - 첨첨한 분포(Leptokurtic):
평균 주변에 데이터가 밀집되어 정상이 더 뾰족한 분포입니다. - 평평한 분포(Platykurtic):
데이터가 더 넓게 퍼져 있어 정상이 평평한 분포입니다.
3. 상관관계 (Correlation)
- 피어슨 상관계수(Pearson’s Correlation):
두 수치형 변수 간의 선형 관계의 강도와 방향을 측정하는 통계적 지표입니다.
값의 범위는 -1(완전한 음의 상관관계) ~ 1(완전한 양의 상관관계)까지이며, 0은 상관관계가 없음을 의미합니다. - 스피어만 상관계수(Spearman Correlation):
비선형 관계 또는 정규분포를 따르지 않는 데이터에 적합한 비모수(non-parametric) 기반의 상관관계 측정 방법입니다. 순위(rank)를 기반으로 계산됩니다. - 히트맵(Heatmap):
여러 변수 간의 상관관계 행렬을 시각적으로 표현하는 도구로, 변수 간 강한 또는 약한 관계를 한눈에 파악할 수 있도록 도와줍니다.
4. 이상치 (Outliers)
- 이상치 식별:
박스 플롯(Box plot), 사분위수 범위(IQR), Z-점수(Z-score) 등을 사용하여 데이터 분포에서 멀리 떨어진 값들을 탐지합니다.
Q1−1.5×IQR 보다 작거나 Q3+1.5×IQR 보다 큰값을 이상치로 식별 - Z-점수(Z-score):
개별 데이터가 평균으로부터 몇 표준편차만큼 떨어져 있는지를 나타내는 값으로, 정규분포 데이터의 이상치 탐지에 자주 사용됩니다.
일반적으로 |Z| > 3 이상이면 이상치로 간주
5. 정규성 검정 (Normality Tests) →정규성 검정 글 참조
- Shapiro-Wilk 검정
- Kolmogorov-Smirnov 검정
6. 범주형 데이터 분석 (Categorical Analysis)
- 빈도와 비율(Frequency and Proportion):
특정 범주형 데이터의 빈도와 전체 중에서 차지하는 비율을 계산합니다. - 막대 그래프(Bar Chart):
범주형 데이터의 빈도 분포를 시각적으로 표현하는 데 사용됩니다. - 원형 차트(Pie Chart):
각 범주의 비율을 원형 형태로 시각화하는 데 사용됩니다.
7. 교차 분석 (Crosstab / Cross Tabulation)
- 교차표(Crosstab):
두 개의 범주형 변수 간의 관계를 분석하기 위해 교차 테이블을 사용합니다.
이를 통해 범주들이 함께 어떻게 분포되는지를 이해할 수 있습니다.
일반적으로 빈도표(contingency table)를 만들어 변수 간의 분포나 연관성을 확인하고,
필요하면 카이제곱 검정(χ² test)을 함께 사용합니다.
import pandas as pd
# 예시 데이터
data = {
'성별': ['남', '여', '남', '여', '여', '남', '여'],
'구매여부': ['구매', '미구매', '구매', '구매', '미구매', '미구매', '구매']
}
df = pd.DataFrame(data)
# 교차표 생성
cross_table = pd.crosstab(df['성별'], df['구매여부'], margins=True)
print(cross_table)
- 시각화
import seaborn as sns
import matplotlib.pyplot as plt
plt.rc('font', family='NanumBarunGothic') # 코드 추가
sns.countplot(x='성별', hue='구매여부', data=df)
plt.title('성별 vs 구매여부 교차분석')
plt.show()
- 카이제곱
from scipy.stats import chi2_contingency
# 카이제곱 검정
chi2, p, dof, expected = chi2_contingency(pd.crosstab(df['성별'], df['구매여부']))
print(f'카이제곱 통계량: {chi2:.2f}')
print(f'p-value: {p:.4f}')
카이제곱 통계량: 0.0000000000
p-value: 1.0000000000 → 변수간 유의한 관계 없음. 독립적임
해석
- p < 0.05 → 변수 간 통계적으로 유의한 관계가 있음
- p ≥ 0.05 → 변수 간 유의한 관계 없음 (독립적)
8. 가설 검정 ( Hypothesis Testing)
- T-검정(T-Test):
두 집단 간의 평균 차이를 비교하기 위한 통계적 검정입니다. - 카이제곱 검정(Chi-Square Test):
두 범주형 변수 간의 관련성 또는 독립성을 확인하는 검정입니다.
728x90