본문 바로가기
자격증/[빅분기] 빅데이터분석기사

[작업형3] 회귀분석(1)

by 바다의 공간 2024. 11. 11.

회귀 분석(Regression)

-수치형변수를 다루고 있음

-독립,종속관계 예측할 때 사용함.

 

 

상관관계

두 변수 간의 선형적인 관계

두 변수 간의 선형 관계의 강도와 방향 (-1 ≤ r ≤ 1)

상관계수

 

  • r = 1: 강한 양의 선형관계
  • r = 0: 선형 관계 없음
  • r = -1: 강한 음의 선형관계

작업형 3 문제에서 상관계수를 구하라 하면 피어슨, 스이퍼만상관계수or 켄달타우 구하라 하면 각각 쓰기

  • df.corr() #피어슨 (기본값)
  • df.corr(method='spearman') #스피어맨
  • df.corr(method='kendall') #켄달타우

 

 

상관계수에 대한 t검정

귀무가설: 두 변수 간에 상관관계가 없다.
대립가설: 두 변수 간에 상관관계가 있다.

  • stats.pearsonr(x, y) #피어슨
  • stats.spearmanr(x, y) # 스피어맨
  • stats.kendalltau(x, y) # 켄달타우

 

단순 선형 회귀 분석

(6회 7회 기출)

  • OLS: 최소제곱법(Ordinary Least Squares)
  • ols(’종속변수 ~ 독립변수’, data=df).fit() / R스타일대로 사용(종속변수~ 독립변수)하기!
  • model.summary() #회귀 모델 통계적 요약 (PVALU, 신뢰구간 등을 확인할 수 있음)
  • model.predict() # 예측값
  • model.get_prediction() # 예측값과 예측값에 대한 신뢰구간, 예측구간 (보통은 95%)
  • df['잔차'] = df['종속변수'] - model.predict(df)

 

 

 

다중 선형 회귀 분석

  • ols(’종속변수 ~ 독립변수1 + 독립변수2’, data=df).fit()

 

범주형 변수

  • 판다스의 pd.get_dummies(drop_first=True)로 원핫인코딩 처리
  • 다중공선성을 피하기 위해서 drop_first =True로 처리함!