오답노트

[데이터 분석] 이변량 분석 - 수치 데이터와 수치 데이터 1 본문

Python/데이터 분석

[데이터 분석] 이변량 분석 - 수치 데이터와 수치 데이터 1

권멋져 2022. 8. 11. 21:38

이변량 분석

이변량 분석은 두 변수에 대해서 상관관계가 어떤지 분석하는 것이다.

 

변수(x) -> 타겟(y) 을 가정했을 때 두 변수간 상관관계를 분석한다.

 

수치형 데이터와 수치형 데이터 분석

산점도 패턴

[matplotlib] scatter (산점도)

 

[matplotlib] scatter (산점도)

scatter 데이터를 표에 점을 찍어서 나타내는 그래프다. plt.scatter(시리즈, 시리즈]) plt.scatter('시리즈명', '시리즈명', data = 데이터프레임) plt.scatter(air['Temp'], air['Ozone']) # plt.scatter('Temp'..

dhjkl123.tistory.com

산점도에 대한 대략적인 설명은 위 링크에서 확인할 수 있다.

 

산점도는 명확한 패턴이 보일수록 강한 상관관계가 있다고 볼 수 있다.

2.1.1. 산점도 상관관계 패턴

r은 상관계수이다.

직선에 기울기에 따라 양 또는 음의 방향으로 나타낼 수 있고

군집도가 낮을 수록 관계도 약해진다고 볼 수 있다.

 

하지만 시각적으로 상관관계를 파악하는 건 한계가 있을 수 있다.

이건 오직 시각화에 목적을 가지고 있다.

 

상관계수와 p값

수치적으로 상관계수와 p값을 알아볼 필요가 있다.

 

import scipy.stats as spst
spst.pearsonr(변수시리즈, 타겟시리즈)

위 spst.pearsonr는 NaN 값이 있으면 계산되지 않는다.

 

결과는 튜플로 두 개의 값이 출력된다.

  1. 상관계수 (r)
  2. p 값

사진 2.1.1 에서 나타난 r 값을 수치적으로 몇인지 출력해서 확인할 수 있다.

 

또는 pandas의 corr 함수를 통해서 모든 데이터들 간에 상관계수도 확인할 수 있다.

 

df.corr()

2.2.1. 상관계수 데이터프레임

중간에 존재하는 1은 무시하고 1 기준으로 위 또는 아래만 확인하면 된다.

 

상관계수의 한계

2.3.1. 상관계수 한계

만약 산점도가 위처럼 나오면 상관계수의 의미가 전혀 없다.

 

그래서 p 값으로 두 데이터의 상관관계를 검정해야 한다.