Python/Basic Data Analysis

[Python Data Analysis]상관관계 분석(Correlation Analysis)

sohyunkimmm 2023. 1. 13. 10:21
728x90

* 상관관계 분석

- 근본: 공분산, np.cov(x,y)

- 상관계수 종류

  1) 피어슨 상관계수: 연속형 자료에 사용

  2) 스피어만 상관계수: 순위가 변수별로 연관이 있는가

  3) Kendall의 tau: 스피어만과 비슷하지만 표본이 작을 때 사용

 

- 편상관관계 분석: 제 3의 변수를 통제한 상태에서 두 변수의 상관관계를 분석하는 것

- 정준상관관계 분석: 2개 이상의 종속변수와 2개 이상의 독립변수 간의 관계를 살펴보는 기법

 

- 히트맵: 변수간 상관계수를 히트맵으로 한눈에 확인 가능

- 산점도 그래프: 두 변수간의 분포를 통해 상관관계성 혹은 선형성을 확인할 수 있다. 

(느슨한)양의 상관관계
선형관계가 뚜렷해질수록, 상관계수가 1(반비례= -1)에 가까워짐

 

 

 

1. 필요한 패키지, 함수 불러오기

matplotlib, seaborn, pandas, scipy
sklearn_prerprocessing, MinMaxScaler, StandardScaler / boxcox / pingouin
scikit_posthocs, scipy, ols, anova_lm
한글 불러오기
나눔바른고딕체 가져오기

 

 

2. 데이터 불러오기

csv파일 불러오기

 

 

3. 피어슨 상관계수

- .corr(method = "pearson")

- 상관관계를 찾을때 결과값 0.7 이상인 값만 찾음

피어슨 상관계수

 

 

4. 히트맵 그려보기

- colormap = plt.cm.bugn

- plt.figure(figsize = (10, 10))

- plt.title("피어슨 상관계수")

- sns.heatmap(df1.astype(float).corr(), cmap = colormap)

히트맵 그리기
변수간 상관계수 시각화해서 비교가능

 

728x90
반응형