빅데이터 분석기사 작업형 3유형 팁

SeongGyun Hong·2024년 11월 25일

빅데이터 분석기사

목록 보기
15/16

빅데이터 분석기사 작업형 3유형 팁

1. 통계적 가설 검정 기초

1.1 카이제곱 검정 (범주형 변수)

from scipy.stats import chi2_contingency

# 교차표 생성
table = pd.crosstab(df['Gender'], df['Survived'])

# 검정 수행
statistics, p, df, expected = chi2_contingency(table)
# 또는 간단히
print(chi2_contingency(table))

결과 해석 팁:

  • 검정 통계량: 보통 큰 값 (예: 260)
  • p-value: 1.xxxe-형태는 매우 작은 값
  • 정수 값: 자유도

1.2 t-검정 종류

from scipy.stats import ttest_1samp, ttest_ind, ttest_rel

# 단일표본 t-test
ttest_1samp()

# 독립표본 t-test
ttest_ind()

# 대응표본 t-test
ttest_rel()

2. 로지스틱 회귀분석

2.1 기본 방법

from statsmodels.api import Logit, sm
from sklearn.preprocessing import LabelEncoder

# 범주형 변수 전처리
encoder = LabelEncoder()
df['Gender'] = encoder.fit_transform(df['Gender'])

# 변수 설정
X = df[['Gender', 'SibSp', 'Parch', 'Fare']]
X = sm.add_constant(X)  # 절편 추가
y = df['Survived']

# 모델 학습
model = Logit(y, X)
results = model.fit()
print(results.summary())

2.2 Formula 방식 (추천)

# 더 간단하고 편리한 방법
formula = "Survived ~ Gender + SibSp + Parch + Fare"
results = Logit.from_formula(formula, df).fit()
print(results.summary())

장점:

  • 절편 자동 계산
  • 범주형 변수 자동 처리
  • 코드 간소화

2.3 Odds Ratio 계산

import numpy as np

# 방법 1: 변수명으로 계산
print(np.exp(results.params['SibSp']))

# 방법 2: 계수값 직접 입력
print(round(np.exp(-0.3539), 3))

3. 선형 회귀분석

from statsmodels.api import OLS

# 로지스틱과 동일한 formula 방식 사용 가능
formula = "y ~ x1 + x2 + x3"
results = OLS.from_formula(formula, df).fit()
print(results.summary())

4. 실전 팁

  1. 변수 순서 외우기보다는 결과 해석에 집중
  2. 함수의 출력값이 그대로 정답이 아닐 수 있음 - 해석 능력 중요
  3. 많은 독립변수가 있을 때는 formula 방식 활용
  4. summary() 함수에 대부분의 중요 정보가 포함됨
  5. 답안 제출 시 복사/붙여넣기로 실수 방지
  6. 범주형 변수 처리 시 주의 (LabelEncoder 또는 formula 방식 활용)

5. 주의사항

  • 로지스틱 회귀 시 범주형 변수는 반드시 수치형으로 변환
  • 절편 항 추가 여부 확인
  • 결과 해석 시 통계량의 특성 이해 필요
  • formula 방식 사용 시 자동 처리되는 부분 숙지
profile
헤매는 만큼 자기 땅이다.

0개의 댓글