본문 바로가기
Data Science/Pandas, Numpy

[ Pandas ] corr 상관관계수 반환 모듈 알아보기

by Queen2 2022. 10. 1.
728x90
반응형

데이터 분석을 할 때 하나의 데이터와 또 다른 데이터가 얼마나 상관관계를 가지는지 알아보기 위해

'상관계수' 를 알아보는데요, 이를 쉽게 구할 수 있는 Pandas의 corr 사용방법을 알아보겠습니다.

 

 

√  Series.corr

Series.corr(other, method='pearson', min_periods=None)

 

method = {'pearson','kendall','spearman'}

min_periods 는 유효한 결과값 도출을 위해 필요한 최소 관찰값을 지정하는 것을 의미합니다

 

아래는 Kaggle 노트북에서 가져온 코드인데요

 

corr = df['target].corr(df[var_name])

이렇게  Series.corr(compared series) 로 구성하면됩니다

 

 

728x90

 

√  DataFrame.corr

DataFrame.corr(method='pearson', min_periods=1, numeric_only=_NoDefault.no_default)

 

이 방법은 Series 보다 오히려 활용이 간단한데요
>>> def histogram_intersection(a, b):
...     v = np.minimum(a, b).sum().round(decimals=1)
...     return v

>>> df = pd.DataFrame([(.2, .3), (.0, .6), (.6, .0), (.2, .1)],
...                   columns=['dogs', 'cats'])

>>> df.corr(method=histogram_intersection)
      dogs  cats
dogs   1.0   0.3
cats   0.3   1.0
\df.corr(method)를 입력하면 이렇게 각 피처별로 어떤 상관계수를 띄는지가 반환됩니다.
이 방법은 주로 seaborn heatmap을 구성할 때 많이 사용되더라구요

 

 

code source:

https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.corr.html#pandas.DataFrame.corr

728x90
반응형

댓글