728x90
정형 데이터 분석에서 각 칼럼(feature) 간의 상관관계를 알아보는 것이 중요하다.
상관 분석
상관분석은 연속형 변수로 측정된 두 변수 간의 선형적 관계를 분석하는 기법이다.
그렇기 때문에 상관 분석을 할 때 연속형 변수로 이루어진 칼럼만 사용해야 한다.
dataset_number = dataset.select_dtypes(np.number)
dataset에서 np.number 타입의 데이터만 선택한다.
corr()
상관관계 분석( Correlation analysis)
corr = dataset_number.corr()
sns.heatmap()
상관관계를 그래프로 표현한다.
-heatmap 기본 문법
ax=sns.heatmap(data, # 데이터
vmin=10, # 최솟값
vmax=70, # 최댓값
cbar=True, # colorbar의 유무
center=35, # 중앙값 선정
linewidths=0.5, # cell사이에 선을 집어 넣는다
annot= True, # 각 cell의 값 표기 유무
fmt="d", # 그 값의 데이터 타입설정
camp='Blues'# 히트맵의 색 설정 )
예시
corr = app_train[corr_columns].corr()
plt.figure(figsize=(20, 10))
ax = sns.heatmap(
corr,
vmin=-1, vmax=1, center=0,
cmap=sns.diverging_palette(20, 220, n=200),
square=True,
annot=True
)
ax.set_xticklabels(
ax.get_xticklabels(),
rotation=45,
horizontalalignment='right'
)
plt.title('Correlation heatmap', fontsize=30)
plt.show()
위의 그래프에서는 붉은색을 수록 음의 상관관계를, 푸른색일수록 양의 상관관계를 가진다는 것을 알 수 있다.
관심이 있는 타깃 값(y)과 어떤 칼럼이 상관관계가 높은지 주의 깊게 봐야 한다!