티스토리 뷰
반응형
데이터 종류
대분류
수치형 데이터 - 사칙 연산이 가능
범주형 데이터 - 범주로 나누어지는 데이터
이 중에서도 각각 연속, 이산과 순서, 명목으로 나뉜다.
수치형(연속) - 키, 몸무게 수입
수치형(이산) - 과일 개수, 책의 페이지 수
범주형(순서) - 학점, 순위(랭킹)
범주형(명목(간단하게 생각해보면 이름)) - 성별, 음식 종류, 우편 번호
이산형은 정수로 딱 떨어져 셀 수 있는 것. 범주형에서 순서형은 순위가 정해져 있다.
그에 반해 명목형은 순위가 따로 없는 데이터다.
수치형 데이터 시각화
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]머신러닝 딥러닝 문제해결 전략
반응형