1. 상관관계
상관관계란 데이터 간 단순 관계를 설명하는 데 유용하다. 예를 들어 캠핑지가 있는 야영지의 데이터 집합을 확인한다고 가정해보자. 야영지의 고도와 여름의 평균 최고 기온 간에 관계가 있는지 확인해보면, 상관관계가 있는 표본에서는 이 두 가지 변수를 비교했을 때 고도가 증가함에 따라 온도가 떨어지는 선형 관계를 찾을 수 있을 것이다. (음의 상관관계)
- 상관관계 수치는 0에 근접할수록 선형 관계가 약해진다고 본다.(상관관계 없음)
- 두 변수 간 양의 상관관계가 있으면 상관계수는 양의 값, 음의 상관관계에서는 음의 값을 갖는다.
- 상관계수는 (-1 , 1 ) 사이의 결과이며
- 인과관계를 의미하진 않는다.
pandas에도 상관관계를 쉽게 구할 수 있도록 도와주는 함수가 있는데 바로 corr함수이다.
- corr함수()
import pandas as pd
import matplolib.pyplot as plt
%matplotlib inline
train_data = pd.read_csv('/train.csv')
train_data.head()
우선 DataFrame을 head함수로 열어보고
corr() 함수를 사용해보자.
train_data.corr()
corr()함수를 통해 반환된 DataFrame은 대각성분의 값은 모두 1이라는 특성을 갖고 있다. 왜냐하면 자기 자신, 즉 같은 변수에 대한 연산의 결과이기 때문이다. 따라서 좌우대칭성도 갖고 있다.
우리가 이 데이터를 통하여 찾고 싶은 것은 survived. 즉 생존자 데이터인데 눈대중으로 가장 큰 상관계수를 찾았을 때 Pclass와 Fare가 생존에 가장 큰 영향을 미쳤을 것이라 의심해 볼 수 있다.
corr()함수로 불러온 상관관계 DataFrame을 pyplot 모듈을 사용해 시각화해보자.
- plt.matshow() 함수
# <in>
plt.matshow(train_data.corr())
색이 밝을수록 높은 상관관계임을 의미한다.
다음엔 DataFrame에 NaN이 있을 때의 대처법을 공부해보쟈.
'python > pandas' 카테고리의 다른 글
16. pandas DataFrame - 숫자형, 범주형 데이터의 이해 (0) | 2023.02.21 |
---|---|
15. pandas DataFrame NaN 데이터 전처리 (0) | 2023.02.21 |
13. pandas DataFrame - column 추가, 삭제 (0) | 2023.02.18 |
12. pandas - DataFrame boolean Selection (0) | 2023.02.18 |
11. pandas DataFrame -row, slicing(loc, iloc) (0) | 2023.02.18 |