티스토리 뷰

반응형

데이터 종류

 

대분류

 

수치형 데이터 - 사칙 연산이 가능

 

범주형 데이터 - 범주로 나누어지는 데이터

 

이 중에서도 각각 연속, 이산과 순서, 명목으로 나뉜다.

 

수치형(연속) - 키, 몸무게 수입

수치형(이산) - 과일 개수, 책의 페이지 수

범주형(순서) - 학점, 순위(랭킹)

범주형(명목(간단하게 생각해보면 이름)) - 성별, 음식 종류, 우편 번호

 

이산형은 정수로 딱 떨어져 셀 수 있는 것. 범주형에서 순서형은 순위가 정해져 있다.

그에 반해 명목형은 순위가 따로 없는 데이터다.

 

 

수치형 데이터 시각화

import seaborn as sns

titanic = sns.load_dataset('titanic') # 타이타닉 데이터 불러오기

titanic.head()

#씨본을 사용하면 데이터가 더 정갈하다

 

titanic은 seaborn의 기본 데이터 셋.

 

seaborn의 함수들

histplot() : 히스토그램

lcdeplot() : 커널밀도추정 함수 그래프

displot() : 분포도

rugplot() : 러그플롯

 

히스토그램

sns.histplot(data=titanic, x='age'); #데이터 구간의 빈도수(기본 20으로 나뉨)

sns.histplot(data=titanic, x='age', bins=10); #bin로 구간 10개로 고정

sns.histplot(data=titanic, x='age', hue='alive'); #hue는 특정 파라미터를 겹치게 해줌

sns.histplot(data=titanic, x='age', hue='alive', multiple='stack'); 

#multiple='star'은두개가 겹쳤을 때 누적해서 표기하게 해줌

 

커널밀도 추정함수 그래프

 

히스토그램을 매끄럽게 곡선으로 연결한 그래프

kedplot으로 그릴 수 있음

실제로 분석 시 많이 쓰지는 않는다.

 

sns.kdeplot(data=titanic, x='age');

sns.kdeplot(data=titanic, x='age', hue='alive', multiple='stack');
#똑같은 명령어 작용

 

 

분포도

캐글에서 분포도를 그릴 땐 displot()을 많이 사용.

파라미터만 조정하면 histplot()과 kdeplot()이 제공하는 기본 그래프를 모두 그릴 수 있다!

파라미터를 기본값으로 두면 히스토그램을 그린다.

 

sns.displot(data=titanic, x='age'); #기본 분포도=히스토그램

sns.displot(data=titanic, x='age', kind='kde'); #커널밀도추정 함수 kde 추가

sns.displot(data=titanic, x='age', kde=True); # kde=True는 커널밀도 추정과 히스토그램 동시!

 

 

러그플롯

러그플롯은 주변 분포를 나타내는 그래프.

단독보다는 주로 다른 분포도 그래프와 함께 사용.

sns.kdeplot(data=titanic, x='age')
sns.rugplot(data=titanic, x='age');
#커널밀도와 같이 그린 것

 

러그플롯은 피처가 어떻게 분포돼 있는지를 x축 위에 작은 선분(러그)로 표시

 

 

출처: [Must Have]머신러닝 딥러닝 문제해결 전략

https://wikidocs.net/book/13313

반응형